Có kiểu mã hóa nào được đề xuất / thường được chấp nhận để xử lý các tình huống trong đó hàm trả về một tuple giá trị không nhưng chỉ một trong những giá trị đó được sử dụng sau đó (lưu ý rằng điều này chủ yếu dành cho các hàm thư viện mà tôi không thể thay đổi - viết một trình bao bọc xung quanh Cuộc gọi có lẽ là một chút quá mức cần thiết? Thay vì làm
a, b, c = foo()
và sau đó chỉ không sử dụng b
và c
, biến thể nào sau đây nên được ưu tiên (hoặc có biến thể nào khác không?):
Biến thể 1 (gạch dưới)
a, _, _ = foo()
(rất rõ ràng và đơn giản nhưng có thể xung đột với việc _ = gettext.gettext
sử dụng trong nhiều ứng dụng sử dụng dịch thuật)
Biến thể 2 (tên giả)
a, unused, unused = foo()
(tôi không hấp dẫn lắm, tôi nghĩ, tương tự với các tên khác như dummy
)
Biến 3 (chỉ mục)
a = foo()[0]
(với tôi ()[0]
vẻ ngoài không giống pythonic)
a, b = foo()[0:2]
có hoạt động không? Nếu có: có, đúng vậy :)
a, *_ = foo()
sẽ loại bỏ tất cả các giá trị ngoại trừ giá trị đầu tiên.