Tôi đang tìm một số trợ giúp để hiểu các phương pháp hay nhất về từ điển trong Python.Được khuyến nghị sử dụng từ điển Python, hàm làm giá trị
Tôi có một ví dụ dưới đây:
def convert_to_celsius(temp, source):
conversion_dict = {
'kelvin': temp - 273.15,
'romer': (temp - 7.5) * 40/21
}
return conversion_dict[source]
def convert_to_celsius_lambda(temp, source):
conversion_dict = {
'kelvin': lambda x: x - 273.15,
'romer': lambda x: (x - 7.5) * 40/21
}
return conversion_dict[source](temp)
Rõ ràng, hai chức năng đạt được mục tiêu giống nhau, nhưng qua các phương tiện khác nhau. Ai đó có thể giúp tôi hiểu sự khác biệt tinh tế giữa hai người, và cách 'tốt nhất' để tiếp tục điều này sẽ là gì?
Việc đầu tiên là tốt hơn trong trường hợp này! và sự khác biệt là trong thứ hai, giá trị của bạn là một hàm tính toán tạm thời và trả về nó! – Kasramvd
Nếu bạn di chuyển 'conversion_dict' bằng' lambda '** bên ngoài ** của hàm, bạn không phải tạo lại nó mỗi khi bạn gọi hàm, điều này sẽ hiệu quả hơn. Nếu không, bạn cũng có thể sử dụng cái đầu tiên. – jonrsharpe
@Kasra bạn có thể giải thích * tại sao * bạn nghĩ rằng, lý tưởng nhất là sử dụng dấu chấm câu ngoài dấu chấm than? – jonrsharpe