为了账号安全,请及时绑定邮箱和手机立即绑定

在 Python 中为矩阵赋值

在 Python 中为矩阵赋值

泛舟湖上清波郎朗 2021-09-25 16:37:50
我写了这段代码,需要生成一个矩阵并保存。但是,在分配矩阵值时,它显示“KeyError: 0”!!任何人都知道是什么原因?谢谢import numpy as npl=5; x=0; z=5; y=np.arange(0,5,0.5)positions = { (i,j):0 for i in range(l) for j in range(2)}for i in range(l):    positions[i][0]=x    positions[i][1]=y[i]    positions[i][2]=z
查看完整描述

3 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

这就是你构造密钥的方式,它应该是一个tuple而不是array类似的东西


import numpy as np

l=5; x=0; z=5; y=np.arange(0,5,0.5)

positions = { (i,j):0 for i in range(l) for j in range(2)}

for i in range(l):

    positions[(i, 0)] = x

    positions[(i, 1)] = y[i]

    positions[(i, 2)] = z


查看完整回答
反对 回复 2021-09-25
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

我不确定您需要的矩阵形状是什么,但假设如下:


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

然后代码:


import numpy as np

l=5; x=0; z=5; y=np.arange(0,5,0.5)


positions = [[0 for j in range(3)] for i in range(l)]


print(positions)


for i in range(l):

    positions[i][0]=x

    positions[i][1]=y[i]

    positions[i][2]=z


查看完整回答
反对 回复 2021-09-25
  • 3 回答
  • 0 关注
  • 354 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信