Python sử dụng ký hiệu dấu hai chấm để giúp bạn hoàn toàn có thể lấy ra nhiều thành phần của mảng theo cách bạn muốn với cú pháp như sau ,
arr[chỉ số bắt đầu : chỉ số kết thúc] # Lấy phần tử trong mảng có vị trí từ chỉ số bắt đầu đến **trước** chỉ số kết thúc.
arr[:chỉ số kết thúc] # Nếu chỉ số bắt đầu bạn để trống, thì mặc định chỉ số bắt đầu là 0.
arr[chỉ số bắt đầu:] # Nếu chỉ số kết thúc bạn để trống, thì mặc định là vị trí ở cuối mảng, điều này đồng nghĩa với việc lấy phần tử trong mảng có vị trí từ chỉ số bắt đầu đến cuối mảng.
arr[:] # Lấy toàn bộ phần tử của mảng.
Với arr
là một mảng đã được khai báo trước đó, chỉ số index trong mảng Python bắt đầu từ 0 nhé.
Ví dụ :
arr = [1, 2, 3, 4, 5, 6]
arr[0:2] # = [1, 2] -> Lấy phần tử trong mảng có chỉ số bắt đầu là 0 và kết thúc là **trước** chỉ số 2.
arr[1:4] # = [2, 3, 4] -> Lấy phần tử trong mảng có chỉ số bắt đầu là 1 và kết thúc là **trước** chỉ số 4.
arr[:2] # = [1, 2] -> Lấy phần tử trong mảng từ đầu cho đến **trước** chỉ số kết thúc là chỉ số 2.
arr[2:] # = [3, 4, 5, 6] -> Lấy phần tử trong mảng bắt đầu từ chỉ số 2 cho đến hết mảng.
arr[:] # = [1, 2, 3, 4, 5, 6] -> Lấy tất cả các phần tử của mảng.
Giả sử bây giờ bạn muốn lấy các phần tử có giá trị chẵn trong mảng thì sao? Python hỗ trợ thêm cơ chế số bước đi với cú pháp,
arr[chỉ số bắt đầu : chỉ số kết thúc : số bước đi]
Ví dụ:
arr[1:5:2] # = [2, 4] -> Duyệt và lấy phần tử trong mảng bắt đầu từ chỉ số 1, kết thúc là ở trước chỉ số 5, với số bước đi là 2.
arr[1::2] # = [2, 4, 6] -> Duyệt và lấy phần tử trong mảng bắt đầu từ chỉ số 1 đến cuối mảng, với số bước đi là 2.
arr[::2] # = [1, 3, 5] -> Duyệt và lấy tất cả các phần tử trong mảng, với số bước đi là 2.
arr[::3] # = [1, 4] -> Duyệt và lấy tất cả các phần tử trong mảng, với số bước đi là 3.
Ngoài ra, Python còn hỗ trợ thêm cơ chế index ngược, tức là bạn có thể sử dụng chỉ số là một số âm để lấy các phần tử trong mảng theo hướng ngược lại (từ cuối mảng về đầu mảng), chỉ số ngược bắt đầu bằng -1
nhé.
Ví dụ :
arr[-1] # = 6 -> Lấy phần tử cuối cùng trong mảng.
arr[:-1] # = [1, 2, 3, 4, 5] -> Lấy phần tử có chỉ số đầu tiên đến **trước** phần tử cuối cùng trong mảng.
arr[-2] # = 5 -> Lấy phần tử cuối thứ hai trong mảng.
arr[-3:-1] # = [4, 5, 6] -> Lấy các phần tử bắt đầu từ vị trí thứ 3 đến phần tử cuối cùng trong mảng.
Source: https://final-blade.com
Category: Kiến thức Internet