使用python

时间:2017-04-27 21:44:18

标签: python dictionary matrix

我需要制作11个100(N,N)矩阵的词典。我想创建一个循环函数来定义所有这些

A1={}
for x in range(1,101):
    R = np.random.random((1,1))
    A1["{0}".format(x)] = np.dot(R,R.transpose())/2

A2={}
for x in range(1,101):
    R = np.random.random((2,2))
    A2["{0}".format(x)] = np.dot(R,R.transpose())/2

A3={}
for x in range(1,101):
    R = np.random.random((3,3))
    A3["{0}".format(x)] = np.dot(R,R.transpose())/2

立刻。 我试着这样做,但它没有用。

for k in range(1,11):
A"%s"%k={}
for x in range(1,101):
    R = np.random.random((k,k))
    A"%s"%k["{0}".format(x)] = np.dot(R,R.transpose())/2

重要的是A3具有3乘3矩阵,A5有5乘5矩阵等。

1 个答案:

答案 0 :(得分:1)

您无法动态创建变量名称。尝试类似:

containing_dict = {}
for k in range(1, 11):
    key = 'A{}'.format(k)
    containing_dict[key] = {}
    for x in range(1, 101):
        R = np.random.random((k,k))
        containing_dict[key][x] = np.dot(R,R.transpose())/2