Tại sao danh sách không có phương pháp "lấy" an toàn như từ điển?
>>> d = {'a':'b'}
>>> d['a']
'b'
>>> d['c']
KeyError: 'c'
>>> d.get('c', 'fail')
'fail'
>>> l = [1]
>>> l[10]
IndexError: list index out of range
l[10:11]thay vì l[10], chẳng hạn. () Danh sách con sẽ có yếu tố mong muốn nếu nó tồn tại)
.get. Nó sẽ tương đương l[i] if i < len(l) else default, nhưng dễ đọc hơn, súc tích hơn và cho phép itrở thành một biểu thức mà không cần phải tính toán lại
Nonenếu nó không tồn tại. Thật tốt khi nói điều x = expensive().get(0, None)đó vì vậy tôi sẽ không phải đặt sự trở lại vô ích của sự đắt đỏ vào một biến tạm thời.