In the example (0, 1, 2) < (0, 3, 4), why does Python return True?

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "Python compares the second element and finds 1 < 3". Tuple được so sánh theo thứ tự từ điển (lexicographic): Python so cặp phần tử đầu tiên, nếu bằng nhau thì chuyển sang cặp kế tiếp, và dừng ngay ở cặp đầu tiên khác nhau; kết quả của cặp đó quyết định cả phép so sánh, các phần tử phía sau không được xét. Ở đây 0 == 0 nên chưa phân định, sang phần tử thứ hai thấy 1 < 3, vậy cả biểu thức là True. "Python compares the third element and finds 2 < 4" sai vì phép so sánh đã dừng ở phần tử thứ hai; dù phần tử thứ ba có lớn hơn thì kết quả vẫn là True. "Python compares the first element and finds 0 < 0" sai vì 0 < 0 là False; phần tử đầu bằng nhau chỉ khiến Python đi tiếp chứ không quyết định kết quả. "Python compares the second element and finds 1 > 3" sai vì 1 > 3 là False; nếu thật như vậy thì biểu thức đã trả về False.

Cùng phần 2

Xuất hiện trong 1 bộ đề