首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过嵌套循环创建二维numpy数组

通过嵌套循环创建二维numpy数组
EN

Stack Overflow用户
提问于 2019-05-06 11:26:41
回答 4查看 3.8K关注 0票数 1

我想创建一个使用嵌套循环的2D数组。这段代码有什么问题?

代码语言:javascript
复制
import numpy

b = np.array([])
for i in range(2):
    for j in range(5):
        b[i][j]=i+j

print(b)
EN

Stack Overflow用户

发布于 2019-05-06 11:29:35

您正在定义的numpy数组不是您正在使用的循环的正确形状。b = np.array([])为您提供了一个形状(0,)数组

你可以使用像np.zeros这样的东西来定义你的2D数组。

代码语言:javascript
复制
import numpy as np
b = np.zeros((3,6))
for i in range(2):
    for j in range(5):
        b[i][j]=i+j
print(b)

输出将是

代码语言:javascript
复制
[[0. 1. 2. 3. 4. 0.]
 [1. 2. 3. 4. 5. 0.]
 [0. 0. 0. 0. 0. 0.]]

另一种选择是创建一个2D列表,将其填充到for循环中,然后转换为numpy数组

代码语言:javascript
复制
import numpy as np

#2D array
b = [ [0 for _ in range(6)] for _ in range(3)]

#Fill up array with for loops
for i in range(2):
    for j in range(5):
        b[i][j]=i+j

#Convert to numpy array
print(np.array(b))

输出将是

代码语言:javascript
复制
[[0 1 2 3 4 0]
 [1 2 3 4 5 0]
 [0 0 0 0 0 0]]
票数 4
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55998442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档