我试图将一个变量存储在python脚本中,mxn
数组使用嵌套循环,如下所示:
A=[ ]
for j in ListA:
for x in ListB:
values = some.function(label_fname, stc_fname)
A(j)=values(x)
对于每个x
,values
是mxn
矩阵,m~=n
。
当我通过values[x]
或values(x)
对此处的值进行索引时,我得到:
output operand requires a reduction, but reduction is not enabled
或can't assign to function call
。
我想要的是追加values(x)
矩阵并存储在A(j)
中。老实说,我不能用英语说这个,但在matlab术语中我试图创建一个单元格数组,其中A{j}
是一个mxn
数组。
提前致谢。
答案 0 :(得分:1)
你似乎有几个问题与python:
在索引到列表时,请使用[
和]
;不是(
和)
。此外,列表的第一个元素是索引0.这意味着如果你有一个列表'L = ['a','b','c','d'],
根据我的解释,我会建议以下代码。看看它是否适合你:
A = []
for sub_list in ListA:
temp = []
for x in ListB:
values = some.function(label_fname, stc_fname)
temp.append(values)
A.append(temp)
我真的不太确定你要求的是什么,但希望这是一个好的开始。希望它有所帮助
答案 1 :(得分:0)
您可能正在尝试/期望使用j
作为密钥创建dict()
。
或者,对于多维数组,numpy
非常有用
请参阅dict()文档:http://docs.python.org/library/stdtypes.html#dict
注意:
> A(j) # this calls function A
> A[j] # this returns the list item 'j'
> A[j] = foo # this sets list item 'j' = foo