x=10
func=[]
for i in range(10):
globals()['p%s' % i]=i**2+x*10
for i in globals().keys():
if i.startswith('p') and len(i)==2:
func.append(i)
print func
import matplotlib.pyplot as plt
data = [[1,2,3], [3,2,1], [2,3,1]]
for i, datum in enumerate(data, 1):
plt.plot(datum, label='line {}'.format(i))
plt.legend()
plt.show()
我认为您希望func list存储变量而不是值。你知道吗
试试这个:
有编号的变量名表示您应该使用列表、元组或dict。例如,这里可以使用list comprehension:
或者,您在注释中提到的示例(假设您使用的是matplotlib):
我认为您应该认真考虑将代码重写为us p[0],p[1],p[2],而不是p0,p1,p2;但是,这会得到相同的结果:
相关问题 更多 >
编程相关推荐