thể trùng lặp:
'has_key()' or 'in'?hiệu quả giữa dict.has_key và quan trọng trong dict bằng Python
Trong Python, đang có hai cách để quyết định liệu một key
là trong một dict
:
if dict.has_key(key)
và if key in dict
Người nào đó nói với tôi rằng thứ hai chậm hơn người đầu tiên vì từ khóa in
làm cho biểu thức lặp lại trên dict, vì vậy nó sẽ chậm hơn so với thay thế has_key
, rõ ràng sử dụng hàm băm để đưa ra quyết định.
Vì tôi rất nghi ngờ sự khác biệt, vì tôi nghĩ Python đủ thông minh để dịch từ khóa in
trước dict
thành một số cách băm, tôi không thể tìm thấy bất kỳ khiếu nại chính thức nào về điều này.
Vì vậy, có sự khác biệt hiệu quả nào giữa hai loại này không?
Cảm ơn.
.... tất cả điều này và ngoài ra, 'has_key()' không được dùng nữa và không còn được sử dụng nữa. :) – jonesy