2024-09-27 00:22:18 发布
网友
我有大约130个包含数值的不同变量 变量类似于ratio70, ratio71, ratio72,...ratio220。 因此,变量从70到220运行,我想用它创建一个数组,这样我就可以进一步使用这个数组来绘制图形 我试过了
ratio70, ratio71, ratio72,...ratio220
70
220
ratioarr= (np.array(ratio%i) for i in range (70,220))
但这也不行。我不想键入所有变量名来形成数组。有更简单的方法吗
您可以使用eval()动态生成变量名:
eval()
print([eval('ratio' + str(i)) for i in range(70, 221)])
您可以使用locals()或globals()字典,它们分别包含本地和全局范围内的所有变量。 所以可能是这样的:
ratioarr = np.array([locals()["ratio" + str(i)] for i in range (70,220)])
您可以在循环中使用exec函数创建如下数组
ratioarr = list() for x in range(70,220): exec(f"ratioarr.append(ratio{x})")
您可以使用
eval()
动态生成变量名:print([eval('ratio' + str(i)) for i in range(70, 221)])
您可以使用locals()或globals()字典,它们分别包含本地和全局范围内的所有变量。 所以可能是这样的:
您可以在循环中使用exec函数创建如下数组
相关问题 更多 >
编程相关推荐