Tôi phải lấy một danh sách các từ và sắp xếp nó, ngoại trừ tôi cần phải nhóm tất cả các chuỗi bắt đầu bằng 'x' trước.Một cách khác nữa để viết biểu thức này?
Đây là những gì tôi nhận:
list_1 = []
list_2 = []
for word in words:
list_1.append(word) if word[0] == 'x' else list_2.append(word)
return sorted(list_1) + sorted(list_2)
Nhưng tôi có cảm giác có một cách nhiều thanh lịch hơn để làm điều này ...
EDIT
Ví dụ: ['mix', 'xyz', 'apple', 'xanadu', 'aardvark']
sản lượng ['xanadu', 'xyz', 'aardvark', 'apple', 'mix']
.
+1, đã dành cho tôi một chút thời gian để hiểu. –
Không hoàn toàn hiểu tại sao công trình này hoạt động. Là True luôn luôn lớn hơn mà x? – helpermethod
@Helper: nó so sánh tuple, phần tử đầu tiên là 'False' hoặc' True'. Bằng cách này, tất cả các bộ dữ liệu có 'False' là phần tử đầu tiên trước tất cả các bộ dữ liệu có' True' làm phần tử đầu tiên. Khi các yếu tố đầu tiên là như nhau, so sánh được thực hiện dựa trên yếu tố thứ hai, mà là quá nói trong trường hợp này là sắp xếp theo thứ tự chữ cái chuẩn. – SilentGhost