Cắt lát trong danh sách Python

Hướng dẫn này dạy bạn cách chia nhỏ các lần lặp, chẳng hạn như danh sách trong Python. Lý thuyết được sao lưu với các ví dụ tuyệt vời

Lập chỉ mục Python

Trong Python, bạn có thể truy cập một phần tử trong chuỗi có chỉ mục. Chỉ số này là một số nguyên đại diện cho vị trí của phần tử cụ thể đó

Trong trường hợp bạn không quen với việc lập chỉ mục hoặc lập chỉ mục phủ định, vui lòng đọc phần này trước khi chuyển sang phần cắt lát

Lập chỉ mục dựa trên Zero trong Python

Trong Python, việc lập chỉ mục bắt đầu từ con số không

Điều này có nghĩa là phần tử đầu tiên có chỉ số bằng 0 và phần tử thứ hai có chỉ số bằng một, v.v.

Đây là một minh họa

Cách sử dụng chỉ mục để truy cập các phần tử trong Python

Bây giờ bạn đã biết lập chỉ mục nghĩa là gì, hãy xem cách sử dụng chỉ mục để lấy giá trị từ các chuỗi

Trong Python, bạn có thể truy cập phần tử thứ n của một lần lặp, chẳng hạn như một danh sách, với một chỉ mục. Để thực hiện việc này, hãy sử dụng toán tử dấu ngoặc vuông bằng cách chuyển chỉ mục làm đối số

Chẳng hạn, hãy tạo một danh sách các số và hãy truy cập vào phần tử thứ 2 và thứ 3 của nó

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]

đầu ra

100 1000

Như bạn có thể thấy, đối số thứ 2 có chỉ số là 1 và đối số thứ 3 có chỉ số là 2

Lập chỉ mục không chỉ giới hạn trong danh sách. Nó cũng hoạt động cho chuỗi và bộ dữ liệu

Dưới đây là các ví dụ

# First letter of a string
greeting = "Hello world!"
first_letter = greeting[0]
print[first_letter] # Prints 'H'

# z-cooridnate of a 3D tuple
coords = 0, 2, 9
z = coords[2]
print[z] # Prints 9

Lập chỉ mục tiêu cực trong Python

Python cũng hỗ trợ lập chỉ mục tiêu cực. Cách lập chỉ mục này bắt đầu ở cuối lần lặp, chẳng hạn như danh sách

Không giống như lập chỉ mục [tích cực], lập chỉ mục tiêu cực không bắt đầu từ 0. Thay vào đó, nó bắt đầu từ -1, trong đó -1 là phần tử cuối cùng [phần tử ngoài cùng bên phải]. Sau đó -2 là lần cuối cùng thứ hai, v.v.

Đây là một minh họa về lập chỉ mục tiêu cực trong Python

Ví dụ: hãy truy cập phần tử cuối cùng và phần tử đầu tiên của danh sách có chỉ mục phủ định

nums = [10, 100, 1000, 10_000]

last = nums[-1]
first = nums[-4]

print[last, first]

đầu ra

10000 10

Tương tự như lập chỉ mục tích cực, lập chỉ mục tiêu cực cũng hoạt động với các bộ dữ liệu và danh sách

Ví dụ

# Last letter of a string
greeting = "Hello world!"
last_letter = greeting[-1]
print[last_letter] # Prints '!'

# z-cooridnate of a 3D tuple
coords = 0, 2, 9
z = coords[-1]
print[z] # Prints 9

Bây giờ bạn đã hiểu cơ bản về cách lập chỉ mục hoạt động trong Python

Tiếp theo, hãy chuyển sang phần cắt lát, liên quan nhiều đến lập chỉ mục

Cắt lát Iterables trong Python

Cắt lát Python cho phép bạn truy cập một loạt các phần tử từ một lần lặp. Chẳng hạn, bạn có thể lấy ba số đầu tiên từ danh sách các số bằng cách cắt

Cắt lát trong Python dựa trên lập chỉ mục dựa trên số không

Cú pháp của slice như sau

iterable[start:stop:stepsize]

Cú pháp này được gọi là cú pháp lập chỉ mục của việc cắt lát. [Sau này, bạn sẽ học một cú pháp thay thế. ]

Ở đâu

  • bắt đầu đánh dấu chỉ mục bắt đầu của lát cắt. Mặc định ở đầu danh sách
  • điểm dừng đánh dấu sự kết thúc của lát cắt. Đại diện cho giá trị đầu tiên không được chọn cho lát cắt. Mặc định trả lại phần còn lại của danh sách
  • stepsize chỉ định có bao nhiêu phần tử để nhảy qua. Mặc định là 1

ví dụ 1. Hãy truy cập các phần tử thứ 2, thứ 3 và thứ 4 của danh sách

Để làm điều này, bạn cần phải

  • Bắt đầu cắt từ phần tử thứ 2 [1 chỉ mục]
  • Dừng cắt trước phần tử thứ 5 [4 chỉ số]
  • Bước qua 1 giá trị tại một thời điểm

Đây là cách nó trông trong mã

[-1, -2, -3]
0

đầu ra

[-1, -2, -3]
1

Vì kích thước bước mặc định là 1 nên bạn không cần viết riêng. Thay vào đó, bạn có thể đã viết

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
9

ví dụ 2. Hãy truy cập ba phần tử đầu tiên của danh sách

Để làm điều này, bạn cần phải

  • Bắt đầu cắt từ đầu danh sách
  • Dừng cắt trước phần tử thứ 4 [chỉ số 3]
  • Bước qua 1 giá trị tại một thời điểm

Nhưng như bạn đã biết, bắt đầu có nghĩa là bắt đầu lại từ đầu theo mặc định. Ngoài ra, kích thước bước là 1 theo mặc định. Vì vậy, chúng ta có thể bỏ qua cả hai

Đây là cách nó trông trong mã

[-1, -2, -3]
2

đầu ra

[-1, -2, -3]
3

ví dụ 3. Hãy lấy mọi phần tử thứ ba của danh sách

Để làm điều này

  • Bắt đầu cắt từ đầu
  • Dừng cắt ở cuối
  • Bước qua 3 giá trị

Khi bạn bắt đầu từ đầu và kết thúc ở cuối, bạn không cần chỉ định tham số bắt đầu và dừng. Điều duy nhất còn lại là kích thước bước, cần được đặt 3

Đây là cách nó trông trong mã

[-1, -2, -3]
4

đầu ra

[-1, -2, -3]
5

Cắt lát âm trong Python

Trong Python, tương tự như lập chỉ mục phủ định, bạn có thể sử dụng phép cắt phủ định. Điều này có nghĩa là bạn truy cập vào một loạt các giá trị bằng cách sử dụng các chỉ mục phủ định làm tham số bắt đầu và dừng

Phép cắt âm tuân theo cú pháp tương tự như phép cắt dương với các tham số bắt đầu và kết thúc là âm

iterable[start:stop:stepsize]

Nhân tiện, bạn cũng có thể xác định kích thước bước âm để lùi lại khi cắt

ví dụ 1. hãy lấy ba phần tử cuối cùng từ một danh sách

Để làm điều này, bạn cần phải

  • Bắt đầu cắt ở phần tử cuối cùng thứ 3 [chỉ số -3]
  • Dừng lại ở cuối danh sách
  • Bước qua 1 giá trị tại một thời điểm

Điều này có nghĩa là bạn chỉ cần chỉ định tham số bắt đầu ở -3 khi cắt. Điều này làm cho lát bắt đầu từ -3 và tự động đi qua phần còn lại của danh sách

Đây là cách nó trông

[-1, -2, -3]
7

đầu ra

[-1, -2, -3]
8

ví dụ 2. Đảo ngược một danh sách các số

Để làm điều này, bạn có thể sử dụng cắt lát

  • Bắt đầu từ cuối danh sách
  • Dừng ở đầu danh sách
  • Lùi lại 1 giá trị tại thời điểm [-1 bước]

Nói cách khác, bạn không cần chỉ định tham số bắt đầu hoặc dừng. Điều duy nhất bạn cần chỉ định là kích thước bước -1 để bắt đầu từ cuối và kết thúc từ đầu

Đây là cách nó trông trong mã

[-1, -2, -3]
9

đầu ra

iterable[start:stop:stepsize]
0

Bây giờ bạn đã hiểu cách cắt hoạt động trong Python bằng cách sử dụng cú pháp lập chỉ mục

Ngoài ra, bạn có thể sử dụng các đối tượng lát có sẵn khi cắt lát lặp lại

Cắt đối tượng trong Python

Trong Python, có một loại tích hợp được gọi là slice

Để tạo một đối tượng slice, hãy sử dụng hàm slice[] có sẵn với cú pháp sau

iterable[start:stop:stepsize]
1

Ở đâu

  • start là chỉ mục bắt đầu tại đó quá trình cắt bắt đầu. Mặc định là Không có
  • stop là chỉ số kết thúc cho đến khi quá trình cắt tiếp tục. Cắt lát dừng tại điểm dừng – 1
  • stepsize là số item nhảy qua khi slice. Mặc định là Không có

Điểm của một đối tượng lát là bạn có thể thay thế chỉ mục để cắt [

100 1000
0] bằng
100 1000
1 để cắt một lần lặp

Hãy quay lại một trong những ví dụ trước, nơi chúng tôi đã truy xuất các phần tử thứ 2, thứ 3 và thứ 4 từ danh sách

[-1, -2, -3]
0

Ở đây bạn đã sử dụng cú pháp cắt trong đó bạn xác định điểm bắt đầu, điểm dừng và kích thước bước trực tiếp bên trong dấu ngoặc vuông

Bây giờ, thay vì làm theo cách này, hãy sử dụng một đối tượng lát cắt

iterable[start:stop:stepsize]
3

đầu ra

iterable[start:stop:stepsize]
4

Như bạn có thể thấy, điều này dẫn đến kết quả chính xác như nhau

Bạn có thể sử dụng một đối tượng lát để cắt danh sách theo bất kỳ cách nào bạn muốn. Nhưng thay vì bỏ qua bắt đầu, dừng hoặc kích thước bước, hãy sử dụng Không có

Ví dụ, hãy đảo ngược một danh sách với một đối tượng slice

iterable[start:stop:stepsize]
5

đầu ra

iterable[start:stop:stepsize]
6

Ở đây,

100 1000
2 hoạt động giống như
100 1000
3

Khi sử dụng Slicing trong Python

Cắt lát rất hữu ích nếu bạn muốn truy cập, sửa đổi hoặc xóa các phần của một lần lặp

Hãy xem một số ví dụ về từng trường hợp sử dụng

Truy cập các phần tử với Slicing trong Python

Truy cập các phạm vi phần tử bằng cách cắt là trường hợp sử dụng phổ biến để cắt

Trong hướng dẫn này, bạn đã thấy hàng chục ví dụ về cách truy cập các phần của iterables bằng cách cắt

Ví dụ: hãy lấy ba giá trị đầu tiên từ một bộ dữ liệu

iterable[start:stop:stepsize]
7

đầu ra

iterable[start:stop:stepsize]
8

Một ứng dụng rất phổ biến để truy cập các lần lặp bằng cách cắt là đảo ngược một lần lặp trong Python

Ví dụ: hãy đảo ngược một chuỗi

iterable[start:stop:stepsize]
9

đầu ra

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
0

Sửa đổi các phần tử với Slicing trong Python

Đôi khi bạn có thể muốn sửa đổi một loạt các mục trong một trình tự. Thay vì sửa đổi các giá trị một cách riêng biệt hoặc sử dụng vòng lặp for, bạn có thể sử dụng tính năng cắt lát

Ví dụ đơn giản, hãy thay thế hai phần tử đầu tiên của danh sách bằng hai phần tử khác

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
1

đầu ra

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
2

Như một ví dụ nâng cao hơn một chút, hãy biến mọi số thứ hai thành âm trong danh sách các số

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
3

đầu ra

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
4

Xóa phần tử với Slicing trong Python

Bạn có thể sử dụng tính năng cắt để loại bỏ các phạm vi mục trong một lần lặp. Để làm điều này, hãy sử dụng câu lệnh del có sẵn trên một lát cắt

Chẳng hạn, hãy xóa mọi phần tử thứ hai trong danh sách

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
5

đầu ra

nums = [10, 100, 1000, 10_000, 100_000]

second = nums[1]
third = nums[2]

print[second, third]
6

Phần kết luận

Hôm nay bạn đã học cách cắt hoạt động trong Python

Tóm lại, cắt lát có nghĩa là truy cập nhiều phần tử trong một lần lặp cùng một lúc. Cắt lát trả về một chuỗi con của chuỗi gốc

Cắt danh sách trong Python là gì?

Trong Python, cắt danh sách là một phương pháp phổ biến và đó là kỹ thuật được lập trình viên sử dụng nhiều nhất để giải quyết các vấn đề hiệu quả . Hãy xem xét danh sách python, Để truy cập một loạt các phần tử trong danh sách, bạn cần cắt danh sách. Một cách để làm điều này là sử dụng toán tử cắt đơn giản i. e. Đại tràng[. ]

cắt lát trong Python với ví dụ là gì?

Cắt lát trong Python là tính năng cho phép truy cập các phần của chuỗi như chuỗi, bộ dữ liệu và danh sách . Bạn cũng có thể sử dụng chúng để sửa đổi hoặc xóa các mục của chuỗi có thể thay đổi, chẳng hạn như danh sách. Các lát cũng có thể được áp dụng trên các đối tượng của bên thứ ba như mảng NumPy, cũng như chuỗi Pandas và khung dữ liệu.

Cắt một danh sách có nghĩa là gì?

Cắt lát là việc trích xuất một phần của chuỗi, danh sách hoặc bộ . Nó cho phép người dùng truy cập phạm vi phần tử cụ thể bằng cách đề cập đến các chỉ số của chúng. cú pháp. Đối tượng [bắt đầu. dừng lại. bước] “Bắt đầu” chỉ định chỉ mục bắt đầu của một lát cắt. “Dừng” chỉ định phần tử kết thúc của một lát cắt.

Sự khác biệt giữa cắt và lập chỉ mục danh sách trong Python là gì?

“Lập chỉ mục” có nghĩa là đề cập đến một phần tử của một iterable theo vị trí của nó trong iterable. “Cắt lát” có nghĩa là lấy một tập hợp con các phần tử từ một lần lặp dựa trên các chỉ số của chúng .

Chủ Đề