簡體   English   中英

在Python中為矩陣分配值

[英]Assign values to a matrix in Python

我已經編寫了這段代碼,需要生成一個矩陣並將其保存。 但是,在分配矩陣值時,它會顯示“ KeyError:0”! 有人知道原因是什么嗎? 謝謝

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

這是鍵的結構方式,應該是一個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

我不確定您需要的矩陣形狀是什么,但是假設如下:

[[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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM