Chỉ mục trong danh sách 2d python

Mảng hai chiều là một mảng trong một mảng. Nó là một mảng của các mảng. Trong kiểu mảng này, vị trí của một phần tử dữ liệu được gọi bằng hai chỉ số thay vì một. Vì vậy, nó đại diện cho một bảng với các hàng và dcột dữ liệu

Trong ví dụ dưới đây về mảng hai chiều, quan sát thấy rằng bản thân mỗi phần tử của mảng cũng là một mảng

Xem xét ví dụ về ghi lại nhiệt độ 4 lần một ngày, mỗi ngày. Đôi khi thiết bị ghi có thể bị lỗi và chúng tôi không thể ghi dữ liệu. Dữ liệu như vậy trong 4 ngày có thể được trình bày dưới dạng mảng hai chiều như bên dưới

Day 1 - 11 12 5 2 
Day 2 - 15 6 10 
Day 3 - 10 8 12 5 
Day 4 - 12 15 8 6 

Dữ liệu trên có thể được biểu diễn dưới dạng mảng hai chiều như bên dưới

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

Truy cập giá trị

Các phần tử dữ liệu trong mảng hai chiều có thể được truy cập bằng hai chỉ số. Một chỉ mục đề cập đến mảng chính hoặc mảng cha và một chỉ mục khác đề cập đến vị trí của phần tử dữ liệu trong mảng bên trong. Nếu chúng ta chỉ đề cập đến một chỉ mục thì toàn bộ mảng bên trong được in cho vị trí chỉ mục đó

Ví dụ

Ví dụ dưới đây minh họa cách nó hoạt động

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

print[T[0]]

print[T[1][2]]

đầu ra

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

[11, 12, 5, 2]
10

Để in ra toàn bộ mảng hai chiều chúng ta có thể sử dụng vòng lặp for python như hình bên dưới. Chúng tôi sử dụng cuối dòng để in ra các giá trị trong các hàng khác nhau

Ví dụ

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
for r in T:
   for c in r:
      print[c,end = " "]
   print[]

đầu ra

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

11 12  5 2 
15  6 10 
10  8 12 5 
12 15  8 6 

Chèn giá trị

Chúng ta có thể chèn các phần tử dữ liệu mới vào vị trí cụ thể bằng cách sử dụng phương thức insert[] và chỉ định chỉ mục

Ví dụ

Trong ví dụ dưới đây, một phần tử dữ liệu mới được chèn vào vị trí chỉ số 2

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

T.insert[2, [0,5,11,13,6]]

for r in T:
   for c in r:
      print[c,end = " "]
   print[]

đầu ra

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

11 12  5  2 
15  6 10 
 0  5 11 13 6 
10  8 12  5 
12 15  8  6 

Cập nhật giá trị

Chúng ta có thể cập nhật toàn bộ mảng bên trong hoặc một số thành phần dữ liệu cụ thể của mảng bên trong bằng cách gán lại các giá trị bằng cách sử dụng chỉ số mảng

Ví dụ

________số 8

đầu ra

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

11 12 5  7 
15  6 10 
11  9 
12 15 8  6 

Xóa các giá trị

Chúng ta có thể xóa toàn bộ mảng bên trong hoặc một số thành phần dữ liệu cụ thể của mảng bên trong bằng cách gán lại các giá trị bằng phương thức del[] với chỉ mục. Nhưng trong trường hợp bạn cần xóa các phần tử dữ liệu cụ thể ở một trong các mảng bên trong, thì hãy sử dụng quy trình cập nhật được mô tả ở trên

Hướng dẫn này dành cho Chế độ Python của Xử lý. Nếu bạn thấy bất kỳ lỗi nào hoặc có ý kiến, xin vui lòng cho chúng tôi biết. Hướng dẫn này được điều chỉnh từ cuốn sách, Learning Processing, của Daniel Shiffman, được xuất bản bởi Nhà xuất bản Morgan Kaufmann, Bản quyền © 2008 Elsevier Inc. Đã đăng ký Bản quyền

Một danh sách theo dõi nhiều mẩu thông tin theo thứ tự tuyến tính hoặc một thứ nguyên. Tuy nhiên, dữ liệu được liên kết với một số hệ thống nhất định [hình ảnh kỹ thuật số, trò chơi trên bàn cờ, v.v. ] sống trong hai chiều. Để trực quan hóa dữ liệu này, chúng ta cần một cấu trúc dữ liệu đa chiều, nghĩa là một danh sách đa chiều

Danh sách hai chiều thực sự không gì khác hơn là danh sách các danh sách [danh sách ba chiều là danh sách các danh sách]. Hãy nghĩ về bữa tối của bạn. Bạn có thể có một danh sách một chiều về mọi thứ bạn ăn

[xà lách, cà chua, sốt salad, bò bít tết, khoai tây nghiền, đậu que, bánh ngọt, kem, cà phê]

Hoặc bạn có thể có một danh sách hai chiều gồm ba món, mỗi món chứa ba thứ bạn ăn

[xà lách, cà chua, nước xốt salad] và [bít tết, khoai tây nghiền, đậu que] và [bánh ngọt, kem, cà phê]

Trong trường hợp danh sách, danh sách một chiều kiểu cũ của chúng ta trông như thế này

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
0

Và một danh sách hai chiều trông như thế này

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
1

Đối với mục đích của chúng tôi, tốt hơn là coi danh sách hai chiều như một ma trận. Một ma trận có thể được coi là một mạng lưới các số, được sắp xếp theo hàng và cột, giống như một bảng bingo. Chúng ta có thể viết danh sách hai chiều như sau để minh họa điểm này

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
2


Chúng ta có thể sử dụng loại cấu trúc dữ liệu này để mã hóa thông tin về một hình ảnh. Ví dụ: hình ảnh thang độ xám sau đây có thể được biểu thị bằng danh sách sau

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
3


Để duyệt qua mọi phần tử của danh sách một chiều, chúng tôi sử dụng vòng lặp for, nghĩa là

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
4


Đối với danh sách hai chiều, để tham chiếu đến mọi phần tử, chúng ta phải sử dụng hai vòng lặp lồng nhau. Điều này mang lại cho chúng ta một biến đếm cho mọi cột và mọi hàng trong ma trận

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
5


Ví dụ: chúng ta có thể viết một chương trình sử dụng danh sách hai chiều để vẽ một hình ảnh thang độ xám

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
6

Một danh sách hai chiều cũng có thể được sử dụng để lưu trữ các đối tượng, điều này đặc biệt thuận tiện cho các bản phác thảo lập trình liên quan đến một số loại "lưới" hoặc "bảng". " Ví dụ sau hiển thị một lưới các đối tượng Ô được lưu trữ trong danh sách hai chiều. Mỗi ô là một hình chữ nhật có độ sáng dao động từ 0-255 với hàm sin

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
7

Hướng dẫn này dành cho Chế độ Python trong Xử lý 2+. Nếu bạn thấy bất kỳ lỗi nào hoặc có ý kiến, xin vui lòng cho chúng tôi biết. Hướng dẫn này được điều chỉnh từ cuốn sách, Learning Processing của Daniel Schiffman, của Daniel Shiffman, được xuất bản bởi Nhà xuất bản Morgan Kaufmann, Bản quyền © 2008 Elsevier Inc. Đã đăng ký Bản quyền

Làm cách nào để lấy chỉ mục của một phần tử trong mảng 2D trong Python?

Trong Python, chúng ta có thể truy cập các phần tử của mảng hai chiều bằng hai chỉ số . Chỉ mục đầu tiên đề cập đến việc lập chỉ mục của danh sách và chỉ mục thứ hai đề cập đến vị trí của các phần tử. Nếu chúng ta chỉ định nghĩa một chỉ mục với một tên mảng, nó sẽ trả về tất cả các phần tử 2 chiều được lưu trữ trong mảng.

Chỉ mục trong mảng 2D là gì?

Mảng hai chiều [2D] được lập chỉ mục bởi hai chỉ số con, một cho hàng và một cho cột . • Ví dụ. hàng cột. xếp hạng[0][2] = 2.

một danh sách có thể là 2

Python cung cấp nhiều cách để tạo danh sách/mảng 2 chiều . Tuy nhiên, người ta phải biết sự khác biệt giữa những cách này vì chúng có thể tạo ra các phức tạp trong mã mà rất khó để tìm ra.

Chỉ mục đầu tiên trong mảng 2D là gì?

Trong mảng 2D, hàng là chỉ mục chính đầu tiên.

Chủ Đề