Hướng Dẫn Cách Sử Dụng Hàm sorted() và sort() Trong Python 3
1. Tổng quan về hàm sorted() và sort()
Python cung cấp hai cách để sắp xếp các phần tử của một danh sách hoặc chuỗi phần tử: hàm sorted() và phương thức sort(). Cả hai đều được sử dụng để sắp xếp các phần tử, nhưng chúng khác nhau ở một vài khía cạnh quan trọng.
sorted(): Là một hàm tích hợp của Python có thể sắp xếp bất kỳ iterable (chuỗi, danh sách, tuple, v.v.), trả về một danh sách mới chứa các phần tử đã được sắp xếp mà không làm thay đổi danh sách ban đầu.
sort(): Là phương thức của đối tượng kiểu danh sách (list) và chỉ có thể áp dụng cho danh sách. Nó sắp xếp danh sách tại chỗ, tức là thay đổi danh sách ban đầu mà không tạo ra một bản sao.
2. Sử dụng hàm sorted()
2.1. Cú pháp
sorted(iterable, key=None, reverse=False)
iterable: Đối tượng có thể lặp lại được (như danh sách, tuple, chuỗi, v.v.).
key (tùy chọn): Hàm được sử dụng để xác định tiêu chí sắp xếp. Mặc định là None.
reverse (tùy chọn): Nếu True, danh sách sẽ được sắp xếp theo thứ tự giảm dần. Mặc định là False.
2.2. Ví dụ cơ bản
# Sắp xếp một danh sách số nguyên
numbers = [5, 2, 9, 1, 5, 6]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # Kết quả: [1, 2, 5, 5, 6, 9]
# Danh sách ban đầu không thay đổi
print(numbers) # Kết quả: [5, 2, 9, 1, 5, 6]
2.3. Sắp xếp theo thứ tự giảm dần
Sử dụng tham số reverse=True để sắp xếp theo thứ tự giảm dần.
# Sắp xếp danh sách chuỗi theo độ dài
words = ["apple", "banana", "cherry", "date"]
words.sort(key=len)
print(words) # Kết quả: ['date', 'apple', 'banana', 'cherry']
4. Sự khác nhau giữa sorted() và sort()
Đặc điểm
sorted()
sort()
Đối tượng
Bất kỳ iterable nào
Chỉ áp dụng cho danh sách (list)
Thay đổi danh sách gốc
Không, tạo ra danh sách mới
Có, sắp xếp tại chỗ
Kết quả trả về
Danh sách đã sắp xếp mới
None (danh sách ban đầu bị thay đổi)
Khả năng sử dụng
Đa dụng hơn, có thể dùng với tuple, chuỗi, v.v.
Chỉ dùng được cho danh sách
5. Khi nào nên dùng sorted() hay sort()?
Sử dụng sorted() khi bạn không muốn làm thay đổi danh sách ban đầu hoặc khi cần sắp xếp các kiểu iterable khác ngoài danh sách.
Sử dụng sort() khi bạn chỉ cần sắp xếp danh sách và không quan tâm đến việc thay đổi danh sách ban đầu.
6. Kết luận
Cả sorted() và sort() đều là những công cụ mạnh mẽ trong Python để sắp xếp dữ liệu. Nếu bạn muốn giữ nguyên dữ liệu gốc, sorted() là lựa chọn tốt hơn. Nếu bạn muốn sắp xếp trực tiếp và tiết kiệm bộ nhớ, hãy sử dụng sort().
This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.
Strictly Necessary Cookies
Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.
If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.