Python trong khi không kết thúc danh sách

Thử thách này lấy cảm hứng từ câu chuyện về nhà toán học Carl Friedrich Gauss. Chuyện kể rằng, khi Gauss còn học tiểu học, một ngày nọ, giáo viên của anh ấy đã nổi giận với cả lớp.

"Tôi sẽ khiến các bạn bận rộn một lúc", giáo viên nghiêm khắc nói với cả nhóm. "Bạn phải cộng các số từ 1 đến 100, và bạn không được nói một lời nào cho đến khi bạn làm xong. "

Giáo viên mong đợi một khoảng thời gian yên tĩnh, nhưng một lúc sau, nhà toán học tương lai của chúng ta đã giơ tay với câu trả lời. "Là 5050. " Gauss đã nhận ra rằng nếu bạn liệt kê tất cả các số từ 1 đến 100, bạn luôn có thể khớp số đầu tiên và số cuối cùng trong danh sách và nhận được một câu trả lời chung

1, 2, 3, ..., 98, 99, 100
1 + 100 = 101
2 + 99 = 101
3 + 98 = 101

Gauss nhận ra có đúng 50 cặp số trong phạm vi từ 1 đến 100 nên ông đã làm một phép tính nhanh. 50 * 101 = 5050

Trước khi bắt đầu, tôi nên đề cập rằng mã trong bài đăng trên blog này và trong video ở trên có sẵn trên github của tôi

Định nghĩa một danh sách

Danh sách được viết trong ngoặc vuông [ ]

Định nghĩa một danh sách. Hàng thứ hai trong chỉ mục bảng này là cách bạn truy cập các mục trong danh sách.
# Define a list
z = [3, 7, 4, 2]

Danh sách lưu trữ một bộ sưu tập các mục có thể thuộc các loại khác nhau. Danh sách được xác định ở trên có các mục cùng loại (int), nhưng tất cả các mục của danh sách không cần phải cùng loại như bạn có thể thấy bên dưới

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]

Danh sách chứa một int, một bool, một chuỗi và một float

Truy cập các giá trị trong danh sách

Mỗi mục trong danh sách có một giá trị chỉ mục được chỉ định. Điều quan trọng cần lưu ý là python là ngôn ngữ dựa trên chỉ mục bằng không. Tất cả điều này có nghĩa là mục đầu tiên trong danh sách nằm ở chỉ mục 0

Mục truy cập ở chỉ mục 0 (màu xanh lam)
# Define a list
z = [3, 7, 4, 2]
# Access the first item of a list at index 0
print(z[0])

Đầu ra của việc truy cập mục tại chỉ số 0

Python cũng hỗ trợ lập chỉ mục tiêu cực. Lập chỉ mục tiêu cực bắt đầu từ cuối. Đôi khi có thể thuận tiện hơn khi sử dụng lập chỉ mục phủ định để lấy mục cuối cùng trong danh sách vì bạn không cần phải biết độ dài của danh sách để truy cập mục cuối cùng

Truy cập mục ở chỉ mục cuối cùng.
# print last item in the list
print(z[-1])

Đầu ra của việc truy cập mục cuối cùng trong Danh sách

Xin nhắc lại, bạn cũng có thể truy cập vào cùng một mục bằng cách sử dụng các chỉ mục tích cực (như bên dưới)

Cách khác để truy cập mục cuối cùng trong danh sách z

Lát danh sách

Các lát rất tốt để nhận một tập hợp con các giá trị trong danh sách của bạn. Đối với mã ví dụ bên dưới, nó sẽ trả về một danh sách có các mục từ chỉ mục 0 đến và không bao gồm chỉ mục 2

Chỉ số đầu tiên là bao gồm (trước. ) và cuối cùng (sau. ) không phải là
# Define a list
z = [3, 7, 4, 2]
print(z[0:2])

Lát cú pháp danh sách

# everything up to but not including index 3
print(z[:3])

Đoạn mã dưới đây trả về một danh sách với các mục từ chỉ số 1 đến cuối danh sách

# index 1 to end of list
print(z[1:])

Cập nhật mục trong danh sách

Danh sách trong Python có thể thay đổi. Tất cả điều đó có nghĩa là sau khi xác định danh sách, có thể cập nhật các mục riêng lẻ trong danh sách

________số 8

Mã để sửa đổi một mục trong listList Phương thức

Danh sách Python có các phương thức khác nhau giúp bạn sửa đổi danh sách. Phần này của hướng dẫn chỉ đi qua các phương pháp danh sách python khác nhau

Phương pháp chỉ mục

# Define a list
z = [4, 1, 5, 4, 10, 4]

Phương thức chỉ mục trả về chỉ mục đầu tiên tại đó một giá trị xuất hiện. Trong đoạn mã dưới đây, nó sẽ trả về 0

# Define a list
z = [3, 7, 4, 2]
0

Bạn cũng có thể chỉ định nơi bạn bắt đầu tìm kiếm

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
0

Phương pháp đếm

Phương pháp đếm hoạt động giống như âm thanh của nó. Nó đếm số lần một giá trị xuất hiện trong danh sách

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
1

Phương pháp sắp xếp

Sắp xếp Danh sách Python - mã thực tế sẽ là. z. loại()

Phương pháp sắp xếp sắp xếp và thay đổi danh sách ban đầu tại chỗ

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
2

Đoạn mã trên sắp xếp một danh sách từ thấp đến cao. Đoạn mã dưới đây cho thấy bạn cũng có thể sắp xếp danh sách từ cao xuống thấp

Sắp xếp danh sách python từ cao xuống thấp
# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
3

Bên cạnh đó, tôi nên đề cập rằng bạn cũng có thể sắp xếp danh sách các chuỗi từ a-z và za như bạn có thể thấy tại đây

Phương pháp nối thêm

Thêm giá trị 3 vào cuối danh sách

Phương thức append thêm một phần tử vào cuối danh sách. Điều này xảy ra tại chỗ

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
4

Loại bỏ phương pháp

Phương thức remove loại bỏ lần xuất hiện đầu tiên của một giá trị trong danh sách

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
5

Mã loại bỏ lần xuất hiện đầu tiên của giá trị 2 khỏi danh sách z

Phương pháp Pop

z. pop(1) xóa giá trị tại chỉ số 1 và trả về giá trị 4

Phương thức pop xóa một mục tại chỉ mục bạn cung cấp. Phương pháp này cũng sẽ trả lại mục bạn đã xóa khỏi danh sách. Nếu bạn không cung cấp chỉ mục, theo mặc định, nó sẽ xóa mục ở chỉ mục cuối cùng

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
6

mở rộng phương pháp

Phương thức mở rộng danh sách bằng cách nối thêm các mục. Lợi ích của việc này là bạn có thể cộng các danh sách lại với nhau

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
7

Thêm danh sách [4, 5] vào cuối danh sách z

Ngoài ra, điều tương tự có thể được thực hiện bằng cách sử dụng toán tử +

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
8

Chèn phương pháp

chèn danh sách [1,2] vào chỉ mục 4

Phương thức chèn chèn một mục trước chỉ mục bạn cung cấp

# Define a list
heterogenousElements = [3, True, 'Michael', 2.0]
9

Đóng nhận xét

Vui lòng cho tôi biết nếu bạn có bất kỳ câu hỏi nào tại đây hoặc trong phần nhận xét của video youtube hoặc qua Twitter. Bài tiếp theo đánh giá từ điển python. Nếu bạn muốn tìm hiểu cách sử dụng các thư viện Pandas, Matplotlib hoặc Seaborn, vui lòng cân nhắc tham gia khóa học LinkedIn về Python để trực quan hóa dữ liệu của tôi. Đây là một video xem trước miễn phí