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

Python - Sử dụng mảng / danh sách 2D đúng cách

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à có thể rất khó để tìm ra.

Ví dụ

rows, cols = (5, 5)
arr = [[0]*cols]*rows
#lets change the first element of the 1st row to 1 & print the array
arr[0][0] = 1
for row in arr:
   print(row)
arr = [[0 for i in range(cols)] for j in range(rows)]
#again in this new array lets change the 1st element of the first row
# to 1 and print the array
arr[0][0] = 1
for row in arr:
   print(row)

Đầu ra

[1, 0, 0, 0, 0]
[1, 0, 0, 0, 0]
[1, 0, 0, 0, 0]
[1, 0, 0, 0, 0]
[1, 0, 0, 0, 0]
[1, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]