Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã hỏi 11 năm, 3 tháng trước 11 years, 3 months ago

Đã xem 2,8 triệu lần 2.8m times

864

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi muốn xác định một mảng hai chiều mà không có độ dài khởi tạo như thế này:

Matrix = [][]

Nhưng điều này gây ra lỗi:

IndexError: Danh sách chỉ mục ra khỏi phạm vi

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Mateen Ulhaq

22.3K16 Huy hiệu vàng86 Huy hiệu bạc127 Huy hiệu đồng16 gold badges86 silver badges127 bronze badges

hỏi ngày 12 tháng 7 năm 2011 lúc 15:54Jul 12, 2011 at 15:54

Masoud Abasianmasoud AbasianMasoud Abasian

10,2K6 Huy hiệu vàng22 Huy hiệu bạc22 Huy hiệu đồng6 gold badges22 silver badges22 bronze badges

3

Về mặt kỹ thuật, bạn đang cố gắng lập chỉ mục một mảng không chính thức. Trước tiên bạn phải khởi tạo danh sách bên ngoài với danh sách trước khi thêm các mục; Python gọi đây là "sự hiểu biết danh sách".

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 

#Bây giờ bạn có thể thêm các mục vào danh sách:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid

Lưu ý rằng ma trận là "Y" địa chỉ chính, nói cách khác, "chỉ mục y" xuất hiện trước "chỉ mục X".

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 

Mặc dù bạn có thể đặt tên cho chúng như bạn muốn, tôi nhìn nó theo cách này để tránh sự nhầm lẫn có thể phát sinh với việc lập chỉ mục, nếu bạn sử dụng "X" cho cả danh sách bên trong và bên ngoài và muốn một ma trận không vuông.

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Saeed

2.9505 huy hiệu vàng31 Huy hiệu bạc48 Huy hiệu đồng5 gold badges31 silver badges48 bronze badges

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 15:59Jul 12, 2011 at 15:59

14

Nếu bạn thực sự muốn một ma trận, bạn có thể tốt hơn khi sử dụng

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
5. Các hoạt động ma trận trong
numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
5 thường sử dụng một loại mảng có hai chiều. Có nhiều cách để tạo ra một mảng mới; Một trong những hữu ích nhất là hàm
numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
7, có tham số hình dạng và trả về một mảng có hình dạng đã cho, với các giá trị được khởi tạo thành 0:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])

Dưới đây là một số cách khác để tạo mảng 2 chiều và ma trận (với đầu ra bị loại bỏ để nén):

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
5 cũng cung cấp loại
numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
9, nhưng nó không còn được khuyến nghị cho bất kỳ mục đích sử dụng nào và có thể bị xóa khỏi
numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
5 trong tương lai.

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:04Jul 12, 2011 at 16:04

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

người gửisenderle

Huy hiệu vàng 140K3535 gold badges206 silver badges231 bronze badges

6

Dưới đây là một ký hiệu ngắn hơn để khởi tạo danh sách các danh sách:

matrix = [[0]*5 for i in range(5)]

Thật không may, việc rút ngắn điều này thành một cái gì đó như

matrix = [[0]*5 for i in range(5)]
1 không thực sự hoạt động vì bạn kết thúc với 5 bản sao của cùng một danh sách, vì vậy khi bạn sửa đổi một trong số chúng, tất cả đều thay đổi, ví dụ::

>>> matrix = 5*[5*[0]]
>>> matrix
[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
>>> matrix[4][4] = 2
>>> matrix
[[0, 0, 0, 0, 2], [0, 0, 0, 0, 2], [0, 0, 0, 0, 2], [0, 0, 0, 0, 2], [0, 0, 0, 0, 2]]

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:17Jul 12, 2011 at 16:17

Andrew Clarkandrew ClarkAndrew Clark

196K33 Huy hiệu vàng265 Huy hiệu bạc297 Huy hiệu Đồng33 gold badges265 silver badges297 bronze badges

11

Nếu bạn muốn tạo một ma trận trống, cú pháp chính xác là

matrix = [[]]

Và nếu bạn muốn tạo một ma trận có kích thước 5 chứa đầy 0,

matrix = [[0 for i in xrange(5)] for i in xrange(5)]

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:00Jul 12, 2011 at 16:00

MRIPARDMRIPARDmripard

2.1982 Huy hiệu vàng13 Huy hiệu bạc11 Huy hiệu đồng2 gold badges13 silver badges11 bronze badges

3

Nếu tất cả những gì bạn muốn là một thùng chứa hai chiều để chứa một số yếu tố, bạn có thể sử dụng một cách thuận tiện thay thế: thay vào đó:

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
0

Sau đó, bạn có thể làm:

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
1

Điều này hoạt động vì

matrix = [[0]*5 for i in range(5)]
2 là một tuple và bạn đang sử dụng nó làm chìa khóa để lập chỉ mục từ điển. Kết quả tương tự như một ma trận thưa thớt.

Như được chỉ ra bởi OSA và JOSAP Valls, bạn cũng có thể sử dụng

matrix = [[0]*5 for i in range(5)]
3 để các phần tử bị thiếu có giá trị mặc định là
matrix = [[0]*5 for i in range(5)]
4.

Vatsal thêm điểm rằng phương pháp này có lẽ không hiệu quả lắm đối với các ma trận lớn và chỉ nên được sử dụng trong các phần không quan trọng của mã.

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 29 tháng 5 năm 2014 lúc 7:23May 29, 2014 at 7:23

Enobayramenobayramenobayram

4.56822 Huy hiệu bạc35 Huy hiệu Đồng22 silver badges35 bronze badges

8

Trong Python, bạn sẽ tạo một danh sách các danh sách. Bạn không phải tuyên bố kích thước trước thời hạn, nhưng bạn có thể. Ví dụ:

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
2

Bây giờ ma trận [0] [0] == 2 và ma trận [1] [0] == 3. Bạn cũng có thể sử dụng cú pháp hiểu biết danh sách. Ví dụ này sử dụng nó hai lần để xây dựng "danh sách hai chiều":

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
3

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:04Jul 12, 2011 at 16:04

người gửiwberry

Huy hiệu vàng 140K358 gold badges51 silver badges82 bronze badges

1

Dưới đây là một ký hiệu ngắn hơn để khởi tạo danh sách các danh sách:

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
4

Thật không may, việc rút ngắn điều này thành một cái gì đó như

matrix = [[0]*5 for i in range(5)]
1 không thực sự hoạt động vì bạn kết thúc với 5 bản sao của cùng một danh sách, vì vậy khi bạn sửa đổi một trong số chúng, tất cả đều thay đổi, ví dụ::

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:17

miken32

Andrew Clarkandrew Clark16 gold badges100 silver badges140 bronze badges

196K33 Huy hiệu vàng265 Huy hiệu bạc297 Huy hiệu ĐồngJul 6, 2018 at 21:06

Nếu bạn muốn tạo một ma trận trống, cú pháp chính xác làunknownerror

Và nếu bạn muốn tạo một ma trận có kích thước 5 chứa đầy 0,2 gold badges22 silver badges24 bronze badges

0

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:00

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
5

MRIPARDMRIPARD

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
6

2.1982 Huy hiệu vàng13 Huy hiệu bạc11 Huy hiệu đồngDec 4, 2015 at 14:13

Nếu tất cả những gì bạn muốn là một thùng chứa hai chiều để chứa một số yếu tố, bạn có thể sử dụng một cách thuận tiện thay thế: thay vào đó:Fabian

Sau đó, bạn có thể làm:4 gold badges33 silver badges45 bronze badges

0

Điều này hoạt động vì

matrix = [[0]*5 for i in range(5)]
2 là một tuple và bạn đang sử dụng nó làm chìa khóa để lập chỉ mục từ điển. Kết quả tương tự như một ma trận thưa thớt.

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
7

Như được chỉ ra bởi OSA và JOSAP Valls, bạn cũng có thể sử dụng

matrix = [[0]*5 for i in range(5)]
3 để các phần tử bị thiếu có giá trị mặc định là
matrix = [[0]*5 for i in range(5)]
4.

# Creates a list containing 5 lists, each of 8 items, all set to 0
w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
8

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 12 tháng 7 năm 2011 lúc 16:00Jul 12, 2011 at 16:00

Utdemirutdemirutdemir

25.9k10 Huy hiệu vàng61 Huy hiệu bạc81 Huy hiệu đồng10 gold badges61 silver badges81 bronze badges

1

Use:

matrix = [[0]*5 for i in range(5)]

*5 cho kích thước đầu tiên hoạt động bởi vì ở cấp độ này, dữ liệu là bất biến.

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 5 tháng 8 năm 2015 lúc 1:10Aug 5, 2015 at 1:10

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

innov8innov8innov8

1.9252 huy hiệu vàng20 Huy hiệu bạc29 Huy hiệu đồng2 gold badges20 silver badges29 bronze badges

1

Đây là cách tôi thường tạo ra các mảng 2D trong Python.

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
0

Tôi thấy cú pháp này dễ nhớ so với việc sử dụng hai cho các vòng lặp trong danh sách hiểu.

Đã trả lời ngày 3 tháng 6 năm 2018 lúc 15:32Jun 3, 2018 at 15:32

MichaelmichaelMichael

68510 Huy hiệu bạc25 Huy hiệu Đồng10 silver badges25 bronze badges

Viết lại để đọc dễ dàng:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
1

Đã trả lời ngày 2 tháng 7 năm 2016 lúc 11:33Jul 2, 2016 at 11:33

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

0

Để khai báo một ma trận số không (một):

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
2

e.g.

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
3

hoặc numpy.ones ((x, y)) ví dụ:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
4

Ngay cả ba chiều là có thể. (http://www.astro.ufl.edu/~warner/prog/python.html Xem-> Mảng đa chiều)

Đã trả lời ngày 7 tháng 12 năm 2013 lúc 20:45Dec 7, 2013 at 20:45

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Khazkhazkhaz

3023 Huy hiệu bạc11 Huy hiệu đồng3 silver badges11 bronze badges

Tôi đang ở trong tập lệnh Python đầu tiên của mình và tôi đã hơi bối rối bởi ví dụ ma trận vuông vì vậy tôi hy vọng ví dụ dưới đây sẽ giúp bạn tiết kiệm thời gian:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
5

để có thể

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
6

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 28 tháng 3 năm 2014 lúc 10:14Mar 28, 2014 at 10:14

user110954user110954user110954

7318 Huy hiệu bạc8 Huy hiệu đồng8 silver badges8 bronze badges

Bạn có thể tạo một danh sách hai chiều trống bằng cách làm tổ hai hoặc nhiều khung hình vuông hoặc khung thứ ba (

matrix = [[0]*5 for i in range(5)]
7, được phân tách bằng dấu phẩy) với một giằng vuông, giống như bên dưới:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
7

Bây giờ giả sử bạn muốn nối 1 đến

matrix = [[0]*5 for i in range(5)]
8 sau đó bạn nhập:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
8

Bây giờ, nhập ma trận và nhấn enter. Đầu ra sẽ là:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
9

Nếu bạn đã nhập câu lệnh sau

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
0

Sau đó, ma trận sẽ là

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
1

Đã trả lời ngày 3 tháng 8 năm 2019 lúc 9:42Aug 3, 2019 at 9:42

Meraj Al Maksudmeraj Al MaksudMeraj al Maksud

1.4522 Huy hiệu vàng22 Huy hiệu bạc35 Huy hiệu Đồng2 gold badges22 silver badges35 bronze badges

Sử dụng Numpy, bạn có thể khởi tạo ma trận trống như thế này:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
2

Và sau này nối thêm dữ liệu như thế này:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
3

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 15 tháng 9 năm 2017 lúc 10:54Sep 15, 2017 at 10:54

1

Tôi đã đọc trong các tệp phân tách bằng dấu phẩy như thế này:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
4

Danh sách "dữ liệu" sau đó là danh sách các danh sách với dữ liệu chỉ mục [hàng] [col]

Đã trả lời ngày 4 tháng 9 năm 2013 lúc 19:40Sep 4, 2013 at 19:40

Wsanderswsanderswsanders

1984 Huy hiệu bạc8 Huy hiệu đồng4 silver badges8 bronze badges

0

Đó là những gì từ điển được tạo ra cho!dictionary is made for!

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
5

Bạn có thể xác định các khóa và giá trị theo hai cách:keys and values in two ways:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
6

hoặc

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
7

Result:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
8

Đã trả lời ngày 16 tháng 1 năm 2017 lúc 6:38Jan 16, 2017 at 6:38

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Use:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
9

Tôi nghĩ rằng Numpy là con đường để đi. Trên đây là một cái chung nếu bạn không muốn sử dụng Numpy.

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 1 tháng 11 năm 2015 lúc 7:48Nov 1, 2015 at 7:48

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Pterodragonpterodragonpterodragon

4199 Huy hiệu bạc16 Huy hiệu Đồng9 silver badges16 bronze badges

1

Nếu bạn muốn có thể nghĩ nó như một mảng 2D thay vì bị buộc phải suy nghĩ về danh sách danh sách (theo ý kiến ​​của tôi, bạn có thể làm như sau:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
0

Kết quả là một danh sách (không phải là một mảng numpy) và bạn có thể ghi đè lên các vị trí riêng lẻ bằng số, chuỗi, bất cứ điều gì.

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Đã trả lời ngày 14 tháng 7 năm 2016 lúc 8:55Jul 14, 2016 at 8:55

Alessadnroalessadnroalessadnro

711 huy hiệu bạc2 huy hiệu đồng1 silver badge2 bronze badges

1

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
1

Sẽ nhanh hơn:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
2

Đã trả lời ngày 18 tháng 11 năm 2018 lúc 14:02Nov 18, 2018 at 14:02

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Sharmaharsh Harsh SharmaHarsh Sharma

10,5K2 Huy hiệu vàng16 Huy hiệu bạc27 Huy hiệu đồng2 gold badges16 silver badges27 bronze badges

1

bằng cách sử dụng danh sách:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
3

Bằng cách sử dụng Dict: Bạn cũng có thể lưu trữ thông tin này trong bảng băm để tìm kiếm nhanh như

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
4

Ma trận ['1'] sẽ cho bạn kết quả trong thời gian O (1)

*NB: Bạn cần phải đối phó với một vụ va chạm trong bảng băm: you need to deal with a collision in the hash table

Đã trả lời ngày 5 tháng 2 năm 2018 lúc 4:27Feb 5, 2018 at 4:27

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Nếu bạn không có thông tin kích thước trước khi bắt đầu thì hãy tạo hai danh sách một chiều.

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
5

Lưu trữ toàn bộ hàng trong danh sách đầu tiên. Sau khi hoàn tất, hãy nối Danh sách 1 vào Danh sách 2:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
6

Output:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
7

Đã trả lời ngày 5 tháng 8 năm 2017 lúc 11:55Aug 5, 2017 at 11:55

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Nagendra Nigadenagendra NigadeNagendra Nigade

8262 Huy hiệu vàng11 Huy hiệu bạc27 Huy hiệu đồng2 gold badges11 silver badges27 bronze badges

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
8

Hãy cẩn thận về biểu thức ngắn này, hãy xem lời giải thích đầy đủ trong câu trả lời của @F.J

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Gongzhitaao

6.2793 huy hiệu vàng35 Huy hiệu bạc44 Huy hiệu đồng3 gold badges35 silver badges44 bronze badges

Đã trả lời ngày 8 tháng 2 năm 2014 lúc 10:24Feb 8, 2014 at 10:24

和 風信 和 和 風信和風信使

1351 Huy hiệu bạc2 Huy hiệu đồng1 silver badge2 bronze badges

6

Dưới đây là đoạn mã để tạo ma trận trong Python:

>>> import numpy
>>> numpy.zeros((5, 5))
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
9

Xin đề nghị nếu tôi đã bỏ lỡ điều gì đó.

Đã trả lời ngày 9 tháng 12 năm 2019 lúc 12:54Dec 9, 2019 at 12:54

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Chandra Shekharchandra ShekharChandra Shekhar

5761 Huy hiệu vàng7 Huy hiệu bạc23 Huy hiệu đồng1 gold badge7 silver badges23 bronze badges

Thông thường, mô-đun đi đến Numpy:

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
0

Đã trả lời ngày 7 tháng 12 năm 2021 lúc 20:35Dec 7, 2021 at 20:35

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

DejanualExdejanualexdejanualex

3.3596 Huy hiệu vàng24 Huy hiệu bạc33 Huy hiệu Đồng6 gold badges24 silver badges33 bronze badges

Thử cái này:

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
1

Đã trả lời ngày 28 tháng 12 năm 2018 lúc 8:45Dec 28, 2018 at 8:45

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Ankit Sharmaankit SharmaAnkit Sharma

1.6541 Huy hiệu vàng13 Huy hiệu bạc18 Huy hiệu đồng1 gold badge13 silver badges18 bronze badges

Trong trường hợp nếu bạn cần một ma trận với các số được xác định trước, bạn có thể sử dụng mã sau:

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
2

Đã trả lời ngày 21 tháng 1 năm 2019 lúc 17:15Jan 21, 2019 at 17:15

Hướng dẫn how do you create an empty 2d array in python? - làm thế nào để bạn tạo một mảng 2d trống trong python?

Vlad Bezdenvlad BezdenVlad Bezden

76.7K23 Huy hiệu vàng240 Huy hiệu bạc176 Huy hiệu đồng23 gold badges240 silver badges176 bronze badges

Người dùng xác định chức năng để đầu vào ma trận và in

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
3

marc_s

715K171 Huy hiệu vàng1315 Huy hiệu bạc1434 Huy hiệu đồng171 gold badges1315 silver badges1434 bronze badges

Đã trả lời ngày 24 tháng 5 năm 2021 lúc 11:35May 24, 2021 at 11:35

Nếu bạn muốn tạo một ma trận 2D có kích thước được xác định bởi hai biến và khởi tạo nó với giá trị mặc định cho tất cả các phần tử của nó. Bạn có thể sử dụng cú pháp đơn giản này

numpy.arange(25).reshape((5, 5))         # create a 1-d range and reshape
numpy.array(range(25)).reshape((5, 5))   # pass a Python range and reshape
numpy.array([5] * 25).reshape((5, 5))    # pass a Python list and reshape
numpy.empty((5, 5))                      # allocate, but don't initialize
numpy.ones((5, 5))                       # initialize with ones
4

Đã trả lời ngày 18 tháng 6 lúc 11:26Jun 18 at 11:26

AriomarioMario

Phù hiệu bằng đồng 2733 bronze badges

Làm thế nào để bạn tạo ra một cái trống hai

Tạo mảng numpy trống và các cột nối..
# Tạo một mảng 2D trống rỗng với 4 hàng và 0 cột ..
trống_array = np. trống ((4, 0), int).
In ('Mảng 2D trống 2D:').
print(empty_array).

Làm thế nào để bạn tạo một mảng trống trong Python?

Các cách để tạo một mảng trống trong Python Cách thứ hai để khai báo một mảng trống trong Python là bằng cách tạo một danh sách và nhân nó với số (độ dài của mảng) để tạo một mảng trống. Điều này sẽ tạo ra một mảng trống có kích thước 4. In (myarr) sẽ dẫn đến đầu ra sau.creating a list and multiplying it by the number(length of the array) to create an empty array. This will create an empty array of size 4. print(myarr) will result in the following output.

Làm thế nào để bạn tạo một mảng 2D trống trong Python Numpy?

Tạo một mảng 2D trống rỗng bằng numpy.empty () để tạo một mảng 2D trống rỗng, chúng ta có thể vượt qua hình dạng của mảng 2D (tức là số lượng hàng & cột) dưới dạng một hàm trống cho hàm trống ().Nó đã trả lại một mảng 2D trống rỗng gồm 5 hàng và 3 cột nhưng tất cả các giá trị trong mảng 2D này không được khởi tạo.pass the shape of the 2D array ( i.e. row & column count) as a tuple to the empty() function. It returned an empty 2D Numpy Array of 5 rows and 3 columns but all values in this 2D numpy array were not initialized.

Bạn có thể thực hiện các mảng 2D trong Python không?

Các mảng 2D trong Python là không chỉ số, có nghĩa là đếm các chỉ số bắt đầu từ 0 chứ không phải một;Do đó, Zero là chỉ số đầu tiên trong một mảng trong Python.Mảng 2D được sử dụng bất cứ nơi nào một ma trận cần được biểu diễn.Chúng ta có thể tạo một mảng 2D với n hàng và cột M đại diện cho ma trận MXN., which means counting indices starts from zero rather than one; thus, zero is the first index in an array in python. 2D arrays are used wherever a matrix needs to be represented. We can create a 2D array with n rows and m columns representing an mxn matrix.