Sắp xếp số trong chuỗi python

Để làm điều này, chúng ta có thể sử dụng tham số bổ sung mà sort() sử dụng. Đây là một hàm được gọi để tính khóa từ mục nhập trong danh sách. Chúng tôi sử dụng regex để trích xuất số từ chuỗi và sắp xếp trên cả văn bản và số.  

Chức năng sắp xếp của Python cung cấp các tính năng mạnh mẽ để thực hiện sắp xếp cơ bản hoặc tùy chỉnh thứ tự ở cấp độ chi tiết

Trong bài viết này, bạn sẽ tìm hiểu cách sắp xếp các loại dữ liệu khác nhau trong các cấu trúc dữ liệu khác nhau, tùy chỉnh thứ tự và làm việc với hai phương pháp sắp xếp khác nhau trong Python

Sử dụng hàm sort()

Trong Python, Danh sách có một hàm riêng để sắp xếp các mục của nó - hàm sort(). Nó có thể được sử dụng trong các trường hợp sử dụng khác nhau để sắp xếp danh sách. Đây là một hàm rất mạnh và cũng có thể thực hiện sắp xếp tùy chỉnh bằng cách cung cấp hàm lambda

Chủ đạo

  • Hàm sort() sửa đổi danh sách tại chỗ, do đó bản thân danh sách đã được sửa đổi và hàm không có giá trị trả về
  • Nó là một phương thức của *list *class và do đó chỉ có thể được sử dụng với các danh sách
  • Theo mặc định, nó sắp xếp theo thứ tự tăng dần

Sắp xếp Danh sách chứa số (Số nguyên và số thập phân)

Hãy xem lại một ví dụ về sắp xếp một danh sách chứa các số. Sắp xếp các số nguyên khá đơn giản vì nó so sánh bằng toán tử so sánh và sắp xếp tương ứng

Đảm bảo rằng tất cả các mục đều là số vì không thể so sánh số và chuỗi thông qua toán tử so sánh "<"

Sắp xếp danh sách chứa chuỗi

Hàm sort() cũng có thể được sử dụng để sắp xếp các chuỗi và nó khá mạnh mẽ vì nó không chỉ so sánh ký tự đầu tiên mà cả các ký tự tiếp theo nếu các ký tự trước đó giống nhau

Hãy xem xét một ví dụ đơn giản

Nếu bạn chỉ muốn so sánh chỉ mục cụ thể trong chuỗi thì sao?

Hãy thử sắp xếp 3 cụm từ theo ký tự thứ 2 trong từ thứ ba của mỗi cụm từ

Ở đây, chúng tôi đang sử dụng tham số chính của hàm sắp xếp và cung cấp hàm lambda để trích xuất ký tự thứ 2 của từ thứ 3 trong mỗi cụm từ và sử dụng nó để sắp xếp danh sách. khá thông minh

Các chuỗi phân biệt chữ hoa chữ thường

Khi sắp xếp chuỗi, bạn cũng cần chú ý đến trường hợp vì khi sắp xếp, phương thức sort() sẽ sắp xếp ký tự bằng ký tự ASCII, do đó, chữ hoa đứng trước chữ thường khi sắp xếp

Hãy xem xét một ví dụ

Sắp xếp danh sách theo thứ tự đảo ngược bằng sort()

Vì sort() sắp xếp danh sách theo thứ tự tăng dần theo mặc định, nếu bạn muốn sắp xếp danh sách theo thứ tự giảm dần, bạn cần cung cấp trạng thái thứ tự làm tham số

Hãy xem cách chúng ta có thể sắp xếp danh sách theo thứ tự giảm dần

Sử dụng hàm sorted()

Python cũng cung cấp hàm tích hợp được sắp xếp() để sắp xếp tất cả các loại kiểu dữ liệu có thể lặp lại như - danh sách, bộ dữ liệu, bộ, v.v.

sorted() và sort() tương tự nhau với một vài điểm khác biệt. Do đó, một trong số chúng có thể được sử dụng để sắp xếp danh sách. Chúng ta đã nói về hàm sort(), giờ hãy nói về sorted()

Chủ đạo

  • Phương thức sorted() không sắp xếp danh sách tại chỗ. Do đó, nó không tự sửa đổi danh sách mà trả về danh sách được sắp xếp mới
  • Đây là một phương thức tích hợp sẵn trong python, do đó có thể được sử dụng trên bất kỳ loại biến lặp nào bao gồm danh sách, bộ dữ liệu và bộ
  • Theo mặc định, nó sắp xếp theo thứ tự tăng dần

Sắp xếp số bằng sorted()

Cũng giống như hàm sort(), chúng ta cũng có thể sắp xếp danh sách số bằng cách sử dụng sorted()

Hãy xem xét một ví dụ

Tương tự, bạn cũng có thể sắp xếp danh sách các chuỗi bằng cách sử dụng hàm sorted()

Sắp xếp danh sách với đối số chính

Cũng giống như phương thức sort(), bạn có thể sử dụng đối số key để tùy chỉnh logic sắp xếp khi sắp xếp danh sách

Hãy thử sắp xếp danh sách các chuỗi theo độ dài của chuỗi từ chuỗi nhỏ nhất đến chuỗi lớn nhất

Hai điều cần lưu ý trong ví dụ trên

  1. Chúng tôi đang chuyển hàm len cho tham số chính, do đó, hàm sắp xếp lấy độ dài của mỗi chuỗi bằng hàm len và so sánh độ dài của mỗi chuỗi
  2. Chuỗi 'rose' đứng trước 'lily'. Tại sao? . Vì vậy, 'hoa hồng' và 'hoa huệ' sẽ được giữ nguyên. Trong cách sắp xếp thông thường, 'hoa loa kèn' sẽ đứng trước 'hoa hồng' theo thứ tự tăng dần

Mẹo hữu ích

Như chúng ta đã nói ở trên, việc sắp xếp danh sách chứa các chuỗi có cả chữ hoa và chữ thường là một vấn đề. Làm thế nào để khắc phục điều đó?

Sắp xếp danh sách chứa cả chuỗi chữ hoa và chữ thường

Hãy nhớ rằng, cả hàm sort() và sorted() đều cho phép chúng ta tùy chỉnh chức năng sắp xếp bằng tham số chính

Vì vậy, chúng tôi sẽ sử dụng đối số key và sẽ viết thường tất cả các chuỗi trước khi sắp xếp chúng bằng cách sử dụng str. chức năng thấp hơn

Phương thức

list.sort(reverse=True)

Code language: Python (python)
9 sắp xếp danh sách ban đầu tại chỗ. Có nghĩa là phương thức

list.sort(reverse=True)

Code language: Python (python)
9 sửa đổi thứ tự các phần tử trong danh sách

Theo mặc định, phương thức

list.sort(reverse=True)

Code language: Python (python)
9 sắp xếp các thành phần của danh sách bằng cách sử dụng toán tử nhỏ hơn (

guests = ['James', 'Mary', 'John', 'Patricia', 'Robert', 'Jennifer'] guests.sort() print(guests)

Code language: Python (python)
5). Nói cách khác, nó đặt các phần tử thấp hơn trước các phần tử cao hơn

Để sắp xếp các phần tử từ cao xuống thấp, bạn chuyển đối số

guests = ['James', 'Mary', 'John', 'Patricia', 'Robert', 'Jennifer'] guests.sort() print(guests)

Code language: Python (python)
6 cho phương thức

list.sort(reverse=True)

Code language: Python (python)
9 như thế này

list.sort(reverse=True)

Code language: Python (python)

Các ví dụ về phương thức sắp xếp danh sách Python ()

Hãy lấy một số ví dụ về việc sử dụng phương thức

list.sort(reverse=True)

Code language: Python (python)
9

1) Sử dụng phương thức Python List sort() để sắp xếp danh sách các chuỗi

Nếu một danh sách chứa các chuỗi, phương thức

list.sort(reverse=True)

Code language: Python (python)
9 sắp xếp các phần tử chuỗi theo thứ tự bảng chữ cái

Ví dụ sau sử dụng phương thức

list.sort(reverse=True)

Code language: Python (python)
9 để sắp xếp các phần tử trong danh sách

list.sort(reverse=True)

Code language: Python (python)
01 theo thứ tự bảng chữ cái

guests = ['James', 'Mary', 'John', 'Patricia', 'Robert', 'Jennifer'] guests.sort() print(guests)

Code language: Python (python)

đầu ra

list.sort(reverse=True)

Code language: Python (python)
0

Và ví dụ sau sử dụng phương thức

list.sort(reverse=True)

Code language: Python (python)
9 với đối số

guests = ['James', 'Mary', 'John', 'Patricia', 'Robert', 'Jennifer'] guests.sort() print(guests)

Code language: Python (python)
6 để sắp xếp các phần tử trong danh sách

list.sort(reverse=True)

Code language: Python (python)
01 theo thứ tự bảng chữ cái đảo ngược

list.sort(reverse=True)

Code language: Python (python)
6

đầu ra

list.sort(reverse=True)

Code language: Python (python)
7

2) Sử dụng phương thức Python List sort() để sắp xếp danh sách các số

Nếu một danh sách chứa các số, phương thức

list.sort(reverse=True)

Code language: Python (python)
9 sắp xếp các số từ nhỏ nhất đến lớn nhất

Ví dụ sau sử dụng phương pháp

list.sort(reverse=True)

Code language: Python (python)
9 để sắp xếp các số trong danh sách

list.sort(reverse=True)

Code language: Python (python)
07 từ nhỏ nhất đến lớn nhất

list.sort(reverse=True)

Code language: Python (python)
1

đầu ra

list.sort(reverse=True)

Code language: Python (python)
2

Để sắp xếp các số từ lớn nhất đến nhỏ nhất, bạn sử dụng

list.sort(reverse=True)

Code language: Python (python)
08 như thế này

list.sort(reverse=True)

Code language: Python (python)
4

đầu ra

list.sort(reverse=True)

Code language: Python (python)
5

3) Sử dụng phương thức Python List sort() để sắp xếp danh sách các bộ dữ liệu

Giả sử rằng bạn có một danh sách các bộ dữ liệu như thế này

list.sort(reverse=True)

Code language: Python (python)
0

Và bạn muốn sắp xếp danh sách công ty theo doanh thu từ cao nhất đến thấp nhất. Để làm điều đó

Đầu tiên, chỉ định một khóa sắp xếp và chuyển nó cho phương thức

list.sort(reverse=True)

Code language: Python (python)
9. Để xác định khóa sắp xếp, bạn tạo một hàm chấp nhận một bộ và trả về phần tử mà bạn muốn sắp xếp theo

list.sort(reverse=True)

Code language: Python (python)
1

Hàm

list.sort(reverse=True)

Code language: Python (python)
60 này chấp nhận một bộ có tên là

list.sort(reverse=True)

Code language: Python (python)
61 và trả về phần tử thứ ba

Lưu ý rằng công ty là một tuple e. g. ,

list.sort(reverse=True)

Code language: Python (python)
62. Và

list.sort(reverse=True)

Code language: Python (python)
63 tham chiếu doanh thu như

list.sort(reverse=True)

Code language: Python (python)
64 trong trường hợp này

Thứ hai, truyền hàm sort_key cho phương thức

list.sort(reverse=True)

Code language: Python (python)
9

list.sort(reverse=True)

Code language: Python (python)
2

Phương thức

list.sort(reverse=True)

Code language: Python (python)
9 sẽ sử dụng giá trị được trả về bởi hàm

list.sort(reverse=True)

Code language: Python (python)
60 để so sánh

Lưu ý rằng bạn chỉ cần chuyển tên hàm không có dấu ngoặc đơn cho phương thức

list.sort(reverse=True)

Code language: Python (python)
9

list.sort(reverse=True)

Code language: Python (python)
3

đầu ra

list.sort(reverse=True)

Code language: Python (python)
4

Sử dụng biểu thức lambda

Để ngắn gọn hơn, Python cho phép bạn định nghĩa một hàm không cần tên với cú pháp sau

list.sort(reverse=True)

Code language: Python (python)
5

Hàm không có tên được gọi là hàm ẩn danh. Và cú pháp này được gọi là biểu thức lambda

Làm cách nào để sắp xếp danh sách bằng Python có chuỗi và số trong đó?

Trăn. Cách sắp xếp danh sách (Chuỗi/Số) .
Trong Python, Danh sách có một hàm riêng để sắp xếp các mục của nó - hàm sort(). .
Chủ đạo
Hàm sort() cũng có thể được sử dụng để sắp xếp các chuỗi và nó khá mạnh mẽ vì nó không chỉ so sánh ký tự đầu tiên mà cả các ký tự tiếp theo nếu các ký tự trước đó giống nhau

Bạn có thể sử dụng sắp xếp trên một chuỗi không?

Lớp string không có bất kỳ phương thức nào trực tiếp sắp xếp chuỗi, nhưng chúng ta có thể sắp xếp chuỗi bằng cách lần lượt áp dụng các phương thức khác. The string is a sequence of characters. In java, objects of String are immutable which means a constant and cannot be changed once created.