Computer >> Máy Tính >  >> Lập trình >> Python

Danh sách đảo ngược Python:Hướng dẫn từng bước

Bạn có thể đảo ngược danh sách bằng Python bằng cách sử dụng cài đặt sẵn reverse() hoặc reverse() các phương pháp . Các phương pháp này sẽ đảo ngược danh sách mà không cần tạo danh sách mới. Python reverse() reverse() sẽ đảo ngược các phần tử trong đối tượng danh sách ban đầu.


Đảo ngược danh sách là một phần phổ biến của bất kỳ ngôn ngữ lập trình nào. Trong hướng dẫn này, chúng tôi sẽ phân tích các phương pháp danh sách ngược Python hiệu quả nhất.

Giả sử bạn có một danh sách bằng Python gồm tên khách hàng theo thứ tự bảng chữ cái ngược lại nhưng muốn xem chúng theo thứ tự bảng chữ cái. Bạn sẽ phải đảo ngược danh sách để làm như vậy. Nếu bạn có một danh sách dài và muốn xem những gì ở dưới cùng, bạn chỉ cần cuộn xuống. Hoặc, bạn có thể đảo ngược để lấy dữ liệu nhanh chóng.

Danh sách Python và Lát danh sách:Trình làm mới

Trong Python, danh sách là mảng các mục. Danh sách của bạn có thể bao gồm chuỗi, boolean, số, đối tượng hoặc bất kỳ kiểu dữ liệu nào khác trong Python và có thể chứa bao nhiêu tùy ý. Khi làm việc với nhiều dữ liệu, có thể hữu ích khi khai báo một danh sách thay vì khai báo nhiều biến.

Lát danh sách

Mặc dù bạn không cần biết về cách cắt danh sách để thực hiện thao tác đảo ngược danh sách, nhưng nó có thể hữu ích.

Đây là cách bạn khai báo một danh sách bằng Python:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]

Chúng tôi vừa khai báo một biến, studentNames và gán một danh sách các giá trị — trong trường hợp này là tên của các sinh viên — cho biến.

Nếu chúng ta muốn lấy một giá trị cụ thể từ danh sách của mình, chúng ta có thể sử dụng số chỉ mục của nó và cắt danh sách. Đó là rất nhiều thứ phải mất, vì vậy chúng ta hãy chia nhỏ nó ra. Mỗi mục trong danh sách của chúng tôi có một giá trị chỉ mục, bắt đầu từ 0. Chúng tôi có thể sử dụng chúng để nhận một giá trị nhất định từ danh sách của mình. Dưới đây là các giá trị chỉ mục cho mảng của chúng tôi:

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình đã dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

Hannah Imogen Lewis Peter
1 2 3

Nếu chúng ta muốn lấy Imogen từ danh sách của chúng tôi, chúng tôi sẽ làm như vậy bằng cách sử dụng mã sau:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
print(studentNames[1])

Chúng tôi đã khai báo biến của chúng tôi với tên sinh viên. Tiếp theo, chúng tôi đã nói rằng chúng tôi muốn nhận mục danh sách với giá trị chỉ mục là 1 . Trong trường hợp này, giá trị là Imogen .

Chúng tôi cũng có thể thay đổi số chỉ mục để có được một phạm vi bằng cách thêm một số khác. Đây là một ví dụ:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
print(studentNames[1:3])

Đầu ra cho mã của chúng tôi sẽ như sau:

["Imogen", "Lewis", "Peter"]

Bây giờ chúng ta đã biết những điều cơ bản về việc phân loại danh sách, chúng ta có thể bắt đầu thảo luận về việc đảo ngược danh sách trong Python.

Hướng dẫn về Danh sách Đảo ngược Python

Ba cách chính mà bạn có thể đảo ngược danh sách trong Python là:

  • Đảo ngược bằng cách sử dụng cắt
  • Đảo ngược bằng cách sử dụng Reverse ()
  • Đảo ngược sử dụng Đảo ngược

Đảo ngược bằng cách sử dụng Slicing

Đầu tiên là sử dụng thủ thuật cắt để đảo ngược danh sách của bạn. Đây là cú pháp Python:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
print(studentNames[::-1])

Đầu ra cho mã của chúng tôi là:

["Peter", "Lewis", "Imogen", "Hannah"]

Trong mã của chúng tôi, chúng tôi đã khai báo biến studentNames của chúng tôi , và sau đó tạo một hàm lát cắt sẽ đảo ngược danh sách. Đây là một cách phổ biến để phân chia danh sách. Nhưng nó có thể không hiệu quả vì nó tạo ra một bản sao của danh sách, chiếm bộ nhớ. Ngoài ra, chức năng này có thể nâng cao hơn một chút so với các phương pháp đảo ngược danh sách khác.

Đảo ngược bằng cách sử dụng Reverse ()

Tùy chọn thứ hai mà chúng tôi có thể thực hiện là sử dụng hàm tích hợp, reverse() . reverse() phương thức có thể được gọi để đảo ngược nội dung của một đối tượng danh sách tại chỗ. Điều này có nghĩa là bạn sẽ không tạo một danh sách mới. Thay vào đó, chúng tôi sẽ sửa đổi đối tượng danh sách ban đầu.

Đoạn mã sau hiển thị cú pháp Python cho reverse() đang hoạt động:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
studentNames.reverse()

print(studentNames)

Đầu ra cho mã của chúng tôi như sau:

["Peter", "Lewis", "Imogen", "Hannah"]

Điều quan trọng cần lưu ý là reverse() bản thân hàm trả về giá trị None . Vì vậy, nếu chúng ta muốn có được danh sách đã sửa đổi của mình, chúng ta cần in nó ra một lần nữa, như chúng ta đã làm ở trên. Đây là một cách hiệu quả để đảo ngược danh sách và không yêu cầu nhiều bộ nhớ, không giống như ví dụ của chúng tôi. Cú pháp cũng rõ ràng và đơn giản.

Đảo ngược bằng cách sử dụng Reversed ()

Cách tiếp cận thứ ba và cuối cùng mà chúng ta có thể sử dụng để đảo ngược danh sách là sử dụng reversed() chức năng. Đây là một hàm tích hợp mà chúng tôi sử dụng bằng cách tạo một trình lặp ngược để tạo thứ tự ngược lại cho danh sách của chúng tôi trong Python. Điều này có nghĩa là danh sách mới không được tạo và danh sách cũ của chúng tôi không được sửa đổi. Thay vào đó, hàm sẽ xoay vòng qua tất cả các phần tử trong danh sách của chúng ta và trả về chúng theo thứ tự ngược lại.

Cú pháp sau hiển thị reversed() chức năng đang hoạt động:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
for i in reversed(studentNames):
	print(i)

Đầu ra cho mã của chúng tôi là:

"Peter"
"Lewis"
"Imogen"
"Hannah"

Nếu chúng tôi thực sự muốn tạo một bản sao đảo ngược của danh sách, chúng tôi có thể sử dụng mã này:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
list(reversed(studentNames))

Điều này sẽ trả về:

["Peter", "Lewis", "Imogen", "Hannah"]

Đây là một cách dễ dàng khác để đảo ngược danh sách. Nó cho thấy rõ ràng những gì đang diễn ra. Một danh sách mới đang được tạo sẽ bao gồm tất cả các giá trị trong danh sách khác của chúng tôi, nhưng đã bị đảo ngược.

Kết luận

Đó là cách hoạt động của các phương pháp danh sách ngược khác nhau. Trong hướng dẫn này, chúng ta đã khám phá những kiến ​​thức cơ bản về danh sách, là mảng các mục như chuỗi hoặc đối tượng và các giá trị chỉ mục đã thảo luận. Chúng tôi cũng đã vạch ra ba phương pháp bạn có thể sử dụng để đảo ngược danh sách.

Tất nhiên, bạn chỉ cần biết một. Nhưng nhận thức được cả ba điều này có thể giúp ích cho bạn nếu những người khác có các cách tiếp cận khác nhau và sử dụng chúng trong mã bạn đọc.