Bạn có thể tùy chọn chỉ định các tham số để tùy chỉnh sắp xếp như thứ tự sắp xếp và tiêu chí sắp xếp
cú pháp
đã sắp xếp [ có thể lặp lại , khóa,reverse]
Phương thức này có hai đối số tùy chọn, phải được chỉ định làm đối số từ khóa
Python sorted[] tham số hàmParameterConditionDescriptioniterableRequiredBất kỳ lần lặp nào [danh sách, bộ, từ điển, bộ, v.v. ] xắp xếp. keyOptionalMột hàm để chỉ định tiêu chí sắp xếp.Giá trị mặc định là Không có. reverseOptionalĐặt nó thành True sắp xếp danh sách theo thứ tự đảo ngược.
Giá trị mặc định là Sai.
Giá trị trả về
Phương thức này trả về một danh sách được sắp xếp mới từ các mục trong có thể lặp lại .
Sắp xếp Iterables
# Sort a tuple
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L]
print[x]
# Prints ['aa', 'bb', 'cc', 'dd']
4 chấp nhận bất kỳ có thể lặp lại nào như danh sách, bộ, từ điển, bộ, chuỗi, v.v. # strings are sorted alphabetically
L = ['red', 'green', 'blue', 'orange']
x = sorted[L]
print[x]
# Prints ['blue', 'green', 'orange', 'red']
# numbers are sorted numerically
L = [42, 99, 1, 12]
x = sorted[L]
print[x]
# Prints [1, 12, 42, 99]
Nếu bạn muốn sắp xếp danh sách tại chỗ, hãy sử dụng phương thức sort[] tích hợp
# Sort a tuple
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L]
print[x]
# Prints ['aa', 'bb', 'cc', 'dd']
6 thực sự nhanh hơn # Sort a tuple
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L]
print[x]
# Prints ['aa', 'bb', 'cc', 'dd']
4 vì nó không cần tạo danh sách mới# Sort a tuple
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L]
print[x]
# Prints ['aa', 'bb', 'cc', 'dd']
Hàm
# Sort a tuple
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L]
print[x]
# Prints ['aa', 'bb', 'cc', 'dd']
4 sắp xếp từ điển theo khóa, theo mặc địnhD = {'Bob':30, 'Sam':25, 'Max':35, 'Tom':20}
x = sorted[D]
print[x]
# Prints ['Bob', 'Max', 'Sam', 'Tom']
Để sắp xếp từ điển theo giá trị, hãy sử dụng hàm
# Sort a tuple
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L]
print[x]
# Prints ['aa', 'bb', 'cc', 'dd']
4 cùng với phương thức values[]________số 8
Sắp xếp theo thứ tự đảo ngược
Bạn cũng có thể sắp xếp một có thể lặp lại theo thứ tự đảo ngược bằng cách đặt đảo ngược to true.
L = ['cc', 'aa', 'dd', 'bb']
x = sorted[L, reverse=True]
print[x]
# Prints ['dd', 'cc', 'bb', 'aa']
Sắp xếp theo khóa
Sử dụng tham số key để sắp xếp tùy chỉnh phức tạp hơn. Tham số key chỉ định một hàm sẽ được thực thi trên từng mục danh sách trước khi thực hiện so sánh.
Ví dụ: với một danh sách các chuỗi, chỉ định
D = {'Bob':30, 'Sam':25, 'Max':35, 'Tom':20}
x = sorted[D]
print[x]
# Prints ['Bob', 'Max', 'Sam', 'Tom']
0 [hàm len[] tích hợp] sắp xếp các chuỗi theo độ dài, từ ngắn nhất đến dài nhất# strings are sorted alphabetically
L = ['red', 'green', 'blue', 'orange']
x = sorted[L]
print[x]
# Prints ['blue', 'green', 'orange', 'red']
# numbers are sorted numerically
L = [42, 99, 1, 12]
x = sorted[L]
print[x]
# Prints [1, 12, 42, 99]
1Sắp xếp với chức năng tùy chỉnh
Bạn cũng có thể chuyển hàm tùy chỉnh của riêng mình dưới dạng hàm key . Một hàm chính sẽ nhận một đối số duy nhất và trả về một khóa để sử dụng để sắp xếp.
# strings are sorted alphabetically
L = ['red', 'green', 'blue', 'orange']
x = sorted[L]
print[x]
# Prints ['blue', 'green', 'orange', 'red']
# numbers are sorted numerically
L = [42, 99, 1, 12]
x = sorted[L]
print[x]
# Prints [1, 12, 42, 99]
2Sắp xếp với lambda
Một hàm chính cũng có thể được tạo bằng biểu thức lambda. Nó cho phép chúng ta định nghĩa hàm nội tuyến