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

Phương pháp danh sách Python:Hướng dẫn từng bước

Danh sách là một cấu trúc dữ liệu tích hợp sẵn trong Python 3. Danh sách Python có thể được sử dụng để tổ chức và lưu trữ dữ liệu theo cách có thứ tự, chẳng hạn như tên của các nhà cung cấp cho một công ty sản xuất, thông tin tiền lương cho nhân viên của công ty, danh sách điểm của học sinh hoặc bất kỳ thứ gì khác.


Có một số hàm tích hợp sẵn trong Python mà chúng ta có thể sử dụng để thay đổi hoặc thao tác dữ liệu được lưu trữ trong danh sách.

Trong hướng dẫn này, chúng tôi sẽ phân tích một số phương pháp tích hợp hữu ích nhất có thể được sử dụng để làm việc với danh sách. Chúng ta sẽ khám phá cách thêm và xóa các phần tử khỏi danh sách, đếm các phần tử trong danh sách, đảo ngược danh sách và hơn thế nữa.

Trình làm mới danh sách

Danh sách là một kiểu dữ liệu trong Python có thể thay đổi, sắp xếp theo thứ tự của các mục. Điều này có nghĩa là danh sách có thể được thay đổi và lưu trữ dữ liệu theo một thứ tự cụ thể.

Mỗi phần tử trong danh sách được gọi là một item và danh sách được xác định bằng các giá trị được phân tách bằng dấu phẩy đặt trong dấu ngoặc vuông ([] ).

Dưới đây là cách tạo danh sách bằng Python:

news_sites = ["New York Times", "Washington Post", "CNN", "BuzzFeed"]

Để in ra danh sách của chúng tôi, chúng tôi có thể sử dụng print() chức năng:

print(news_sites)

Chương trình của chúng tôi trả về mảng ban đầu của chúng tôi như chúng tôi đã xác định nó:

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ọ.

['New York Times', 'Washington Post', 'CNN', 'BuzzFeed']

Để truy xuất một phần tử cụ thể từ danh sách Python, chúng ta phải tham chiếu đến chỉ mục của phần tử đó. Mỗi mục trong danh sách có một số chỉ mục, bắt đầu bằng , cho phép chúng tôi truy xuất nội dung của một phần tử riêng lẻ. Dưới đây là các giá trị chỉ mục cho danh sách chúng tôi đã tạo ở trên:

New York Times Bưu điện Washington CNN BuzzFeed
1 2 3

Bây giờ chúng ta đã biết số chỉ mục của các phần tử danh sách của mình, chúng ta có thể truy xuất một giá trị cụ thể từ danh sách của mình. Để làm như vậy, chúng tôi có thể sử dụng mã sau:

print(news_sites[0])

Mã của chúng tôi trả về:New York Times . Tương tự, nếu chúng tôi tham chiếu mục danh sách với giá trị chỉ mục là 2 , mã của chúng tôi sẽ trả về CNN .

Mỗi mục trong danh sách của chúng tôi cũng có một số chỉ mục âm. Điều này cho phép chúng tôi đếm ngược trên một danh sách và rất hữu ích nếu danh sách của chúng tôi chứa một số lượng lớn các giá trị và chúng tôi muốn truy xuất một giá trị ở cuối danh sách đó.

Dưới đây là các giá trị chỉ số âm cho danh sách của chúng tôi ở trên:

New York Times Bưu điện Washington CNN BuzzFeed
-4 -3 -2 -1

Nếu chúng tôi muốn lấy mục ở vị trí chỉ mục -1 , chúng tôi có thể sử dụng mã này:

print(news_sites[-1])

Mã của chúng tôi trả về:BuzzFeed .

Bây giờ chúng ta đã trình bày những kiến ​​thức cơ bản về danh sách Python, chúng ta có thể bắt đầu khám phá các phương thức danh sách của Python.

Thêm phần tử bằng list.append ()

list.append() cho phép bạn thêm một mục vào cuối danh sách. Dưới đây là ví dụ về danh sách lưu trữ hương vị bánh pizza:

flavors = ["Ham and Pineapple", "Cheese", "Mexican", "Chicken", "Pepperoni"]

Danh sách của chúng tôi bao gồm năm giá trị, bắt đầu bằng giá trị chỉ mục và kết thúc bằng giá trị chỉ mục 4 . Nhưng nếu chúng ta muốn thêm một tùy chọn yêu thích thịt vào danh sách của mình thì sao? Chúng ta có thể sử dụng append() phương pháp để thực hiện hành động này.

Đây là một ví dụ về append() được sử dụng để thêm Meat-Lovers vào danh sách của chúng tôi:

flavors.append("Meat-Lovers")
print(flavors)

Mã của chúng tôi trả về danh sách đã sửa đổi của chúng tôi với Meat-Lovers ở cuối:

['Ham and Pineapple', 'Cheese', 'Mexican', 'Chicken', 'Pepperoni', 'Meat-Lovers']

Chèn vào danh sách bằng list.insert ()

append() cho phép bạn thêm một mục vào cuối danh sách, nhưng nếu bạn muốn thêm một mục tại một vị trí chỉ mục cụ thể, thì insert() phương thức sẽ chèn một mục vào bất kỳ vị trí nào trong danh sách.

Giả sử đầu bếp bánh pizza của chúng tôi đã nấu một món đặc biệt tại nhà với ớt Jalapeno và sẵn sàng thêm nó vào thực đơn. Đầu bếp muốn món bánh pizza này đứng đầu danh sách các hương vị của chúng tôi, để khuyến khích khách hàng mới ăn thử.

Chúng ta có thể sử dụng insert() phương pháp để thực hiện mục tiêu này. insert() phương thức nhận hai đối số:vị trí chỉ mục mà bạn muốn thêm mục và mục bạn muốn thêm vào danh sách của mình. Đây là một ví dụ về insert() được sử dụng để thêm Jalapeno Special ở đầu danh sách hương vị:

flavors.insert(0, "Jalapeno Special")
print(flavors)

Mã của chúng tôi trả về danh sách sau:

['Jalapeno Special', 'Ham and Pineapple', 'Cheese', 'Mexican', 'Chicken', 'Pepperoni', 'Meat-Lovers']

Như bạn thấy, Jalapeno Special đã được thêm vào đầu danh sách của chúng tôi và được chỉ định số chỉ mục . Mọi mục khác trong danh sách của chúng tôi đều di chuyển lên và do đó chúng được cung cấp số chỉ mục mới tương ứng với vị trí mới của chúng trong danh sách. Ham and Pineapple , ví dụ, bây giờ có giá trị chỉ mục 1 , và như thế.

Xóa khỏi danh sách bằng list.remove ()

Để xóa một mục khỏi danh sách Python, chúng ta có thể sử dụng list.remove() phương pháp. Phương pháp này xóa mục đầu tiên khỏi danh sách có giá trị bằng giá trị mà chúng tôi chỉ định.

Sau một tuần dùng thử Jalapeno Special , người ta đã làm rõ rằng khách hàng của nhà bếp pizza không ưa thích hương vị này. Vì vậy, đầu bếp muốn loại bỏ nó khỏi thực đơn trong khi anh ta mày mò công thức. Chúng tôi có thể sử dụng mã sau để xóa Jalapeno Special từ danh sách của chúng tôi:

flavors.remove("Jalapeno Special")
print(flavors)

Mã của chúng tôi trả về danh sách đã sửa đổi mà không có Jalapeno Special :

['Ham and Pineapple', 'Cheese', 'Mexican', 'Chicken', 'Pepperoni', 'Meat-Lovers']

Có một số điều bạn nên biết về remove() phương pháp. Thứ nhất, nếu bạn cố gắng xóa một mục không tồn tại trong danh sách, thì sẽ xảy ra lỗi not in list. sẽ xuất hiện. Thứ hai, remove() phương thức chỉ loại bỏ phiên bản đầu tiên của một mục danh sách. Nếu bạn có hai Jalapeno Specials trong danh sách của bạn, bạn sẽ phải chạy remove() phương pháp hai lần để loại bỏ cả hai.

Xóa khỏi danh sách bằng list.pop ()

list.pop() có thể được sử dụng để xóa và trả lại một mục từ danh sách.

pop() phương thức nhận một đối số tùy chọn:giá trị chỉ mục của phần tử chúng ta muốn xóa khỏi danh sách của mình. Nếu chúng tôi không chỉ định một chỉ mục, hãy pop() sẽ quay lại và xóa mục cuối cùng trong danh sách của chúng tôi.

Nhà bếp pizza của chúng tôi đã quyết định rằng Meat-Lovers pizza nên được chuyển sang thực đơn đặc biệt, bao gồm loạt pizza thử nghiệm mới của đầu bếp. Vì vậy, đầu bếp muốn xóa Meat-Lovers từ danh sách các hương vị cho pizza.

Đây là mã chúng tôi sẽ sử dụng để xóa Meat-Lovers (có giá trị chỉ mục 5 , từ danh sách của chúng tôi):

flavors = ["Ham and Pineapple", "Cheese", "Mexican", "Chicken", "Pepperoni", "Meat-Lovers"]
print(flavors.pop(5))
print(flavors)

Mã của chúng tôi trả về:

Meat-Lovers
['Ham and Pineapple', 'Cheese', 'Mexican', 'Chicken', 'Pepperoni']

Như bạn thấy, pop() hàm đã xóa giá trị mà chúng tôi đã chỉ định và trả về giá trị của mục danh sách mà chúng tôi đã xóa, trong trường hợp này là Meat-Lovers . Sau đó, chúng tôi in ra danh sách mới, danh sách này không còn bao gồm Meat-Lovers .

Kết hợp nhiều danh sách bằng list.extend ()

list.extend() phương thức có thể được sử dụng để kết hợp nhiều danh sách trong Python. extend() phương thức nhận một đối số:đối tượng danh sách bạn muốn thêm vào danh sách hiện có.

Đầu bếp pizza của chúng tôi đã quyết định rằng thực đơn đặc biệt nên được hợp nhất với thực đơn tiêu chuẩn vì khách hàng đã thông báo rằng họ bị nhầm lẫn với hai thực đơn riêng biệt. Để hợp nhất cả hai menu của chúng tôi, chúng tôi sẽ sử dụng mã sau:

flavors = ["Ham and Pineapple", "Cheese", "Mexican", "Chicken", "Pepperoni"]
special_menu = ["Meat-Lovers", "BBQ Chicken", "Sausage and Pepperoni", "Vegetarian Special", "Greek"]

flavors.extend(special_menu)
print(flavors)

Chương trình của chúng tôi trả về như sau:

['Ham and Pineapple', 'Cheese', 'Mexican', 'Chicken', 'Pepperoni', 'Meat-Lovers', 'BBQ Chicken', 'Sausage and Pepperoni', 'Vegetarian Special', 'Greek']

Như bạn có thể thấy, flavors của chúng tôi danh sách hiện bao gồm các mặt hàng từ cả danh sách hương vị cũ và special_menu của chúng tôi danh sách.

Sao chép danh sách bằng list.copy ()

list.copy() cho phép bạn tạo một bản sao của một danh sách. Điều này có thể hữu ích nếu bạn muốn thao tác một danh sách nhưng vẫn giữ nguyên danh sách ban đầu, trong trường hợp bạn cần tham khảo lại danh sách.

Đầu bếp pizza của chúng tôi đã quyết định thử nghiệm thực đơn hơn nữa, thêm hai loại pizza mới vào thực đơn. Tuy nhiên, anh ấy muốn giữ lại danh sách thực đơn gốc để tham khảo.

Chúng tôi có thể sử dụng đoạn mã sau để tạo một bản sao của menu, anh ấy có thể thêm những chiếc pizza mới của mình vào trong khi vẫn giữ nguyên danh sách ban đầu:

new_menu = menu.copy()
print(menu)

Mã của chúng tôi trả về:

['Ham and Pineapple', 'Cheese', 'Mexican', 'Chicken', 'Pepperoni', 'Meat-Lovers', 'BBQ Chicken', 'Sausage and Pepperoni', 'Vegetarian Special', 'Greek']

Bây giờ, chúng tôi có hai danh sách với các giá trị giống nhau:flavorsnew_menu . Vì vậy, đầu bếp có thể thay đổi new_menu , trong khi vẫn giữ flavors danh sách nguyên vẹn.

Sắp xếp danh sách bằng list.sort ()

list.sort() có thể được sử dụng để sắp xếp các mục trong danh sách.

Đầu bếp của chúng tôi đã quyết định rằng danh sách của chúng tôi nên được sắp xếp theo thứ tự bảng chữ cái, để giúp mọi người tìm thấy bánh pizza mà họ đang tìm kiếm dễ dàng hơn. Đoạn mã sau uses sort() để sắp xếp danh sách của chúng tôi theo thứ tự bảng chữ cái:

flavors.sort()
print(flavors)

Mã của chúng tôi trả về:

['BBQ Chicken', 'Cheese', 'Chicken', 'Greek', 'Ham and Pineapple', 'Meat-Lovers', 'Mexican', 'Pepperoni', 'Sausage and Pepperoni', 'Vegetarian Special']

Bạn cũng có thể sử dụng sort() cũng có chức năng trên một danh sách các số, sẽ được sắp xếp theo thứ tự tăng dần.

Đảo ngược danh sách bằng list.reverse ()

list.reverse() có thể được sử dụng để đảo ngược thứ tự của các mục trong danh sách.

Hàm này không sắp xếp danh sách theo thứ tự giảm dần mà thay vào đó lật thứ tự của mọi mục trong danh sách của chúng ta. Vì vậy, mục cuối cùng trong danh sách của chúng tôi trở thành mục đầu tiên trong danh sách mới của chúng tôi và mục cuối cùng thứ hai trở thành mục thứ hai, v.v.

Đầu bếp pizza của chúng tôi đã quyết định rằng anh ấy muốn danh sách các loại pizza được sắp xếp theo thứ tự giảm dần, vì anh ấy đã nhận thấy sự tăng trưởng về số lượng bán từ cuối menu. Đây là mã chúng tôi sẽ sử dụng để đảo ngược danh sách của mình:

flavors = ['BBQ Chicken', 'Cheese', 'Chicken', 'Greek', 'Ham and Pineapple', 'Meat-Lovers', 'Mexican', 'Pepperoni', 'Sausage and Pepperoni', 'Vegetarian Special']
flavors.reverse()
print(flavors)

Mã của chúng tôi trả về như sau:

['Vegetarian Special', 'Sausage and Pepperoni', 'Pepperoni', 'Mexican', 'Meat-Lovers', 'Ham and Pineapple', 'Greek', 'Chicken', 'Cheese', 'BBQ Chicken']

Như bạn thấy, Vegetarian Special là mục cuối cùng trong danh sách ban đầu của chúng tôi và bây giờ là mục đầu tiên — danh sách của chúng tôi đã bị đảo ngược.

Xóa danh sách bằng list.clear ()

list.clear() cho phép bạn xóa tất cả các giá trị trong danh sách.

Tháng mới đã đến trong nhà bếp pizza, và vì vậy người đầu bếp muốn xóa danh sách bán hàng cho tháng Giêng và bắt đầu một danh sách mới cho tháng Hai. Đây là mã có thể được sử dụng để xóa sales của chúng tôi danh sách để nhường chỗ cho tháng 2:

sales.clear()
print(sales)

Mã của chúng tôi trả về một danh sách không có giá trị:[] .

Kết luận

Danh sách là sự sắp xếp có thứ tự, có thể thay đổi của các mục có thể được sử dụng để lưu trữ dữ liệu tương tự. Trong hướng dẫn này, chúng tôi đã chia nhỏ một số phương pháp danh sách Python phổ biến nhất, có thể được sử dụng để thao tác với danh sách của chúng tôi và thu thập thông tin chi tiết về dữ liệu trong danh sách của chúng tôi.

Chúng tôi đã giới thiệu cách sử dụng append() , insert() , remove() , pop() , extend() , copy() , sort() , reverse()clear() liệt kê các phương pháp trong bài viết này và khám phá các ví dụ về từng phương pháp đang hoạt động.

Bây giờ, bạn đã sẵn sàng làm việc với các phương pháp danh sách Python như một chuyên gia!