Tôi có một danh sách bằng Python mà tôi tạo ra như một phần của chương trình. Tôi có một giả định mạnh mẽ rằng đây là tất cả khác nhau, và tôi kiểm tra điều này với một khẳng định.Cách nhiệt tình nhất để đảm bảo rằng tất cả các thành phần của danh sách là khác nhau?
Đây là cách tôi làm điều đó bây giờ:
Nếu có hai yếu tố:
try:
assert(x[0] != x[1])
except:
print debug_info
raise Exception("throw to caller")
Nếu có ba:
try:
assert(x[0] != x[1])
assert(x[0] != x[2])
assert(x[1] != x[2])
except:
print debug_info
raise Exception("throw to caller")
Và nếu tôi đã từng phải làm điều này với bốn yếu tố tôi sẽ phát điên.
Có cách nào tốt hơn để đảm bảo rằng tất cả các yếu tố trong danh sách là duy nhất không?
câu trả lời Rất thông minh – foosion
Bạn chỉ có thể lưu trữ chúng trong một tập ở nơi đầu tiên để đảm bảo rằng tất cả họ đều độc đáo. Hoặc lưu trữ chúng trong một bộ, nhưng trước khi thêm vào các thiết lập kiểm tra cho các thành viên. Nhưng điều này chắc chắn hoạt động nếu bạn không có quyền kiểm soát định dạng đầu vào. –
bộ không nhất thiết phải giữ lại thứ tự, điều này có thể quan trọng. –