2024-10-01 00:23:49 发布
网友
That对kgiannakakis很有帮助。 我面临的问题如下:
a = ['zbc','2.3'] for i in range(0,5): exec('E%d=%s' %(i,a[i]))
这将导致:
好吧。这个代码很奇怪。在
作为这样的一行程序,它在语法上是不正确的,但我怀疑您由于某种原因而错过了换行符。但后来它变成了
但这将导致引用[i]时出现索引错误,如图所示:
如果你避免这个问题,你会得到
exec("E2.3=1")
在第二次通过lopp时,这也是一个语法错误。在
似乎您正在尝试使用this问题中标记的解决方案。在
如果您的目标是访问循环中的值,则应该使用列表。这种奇怪的带有数字的变量名概念在任何语言中都不应该使用。试试这个。在
vals = ['foo', 'bar', 'blah', 67, -0.4, 'your mom'] for i in range(len(vals)): print(vals[i])
这是一个由整数索引的值列表的正确方法,而不是将其放入变量名中。在
您生成的代码似乎扩展到:
E0=zbc E1=2.3
在循环的下一次迭代中,您将得到一个IndexError异常,因为a只有两个元素长。在
a
因此,鉴于上述情况,您正试图将zbc的值赋给E0。如果zbc不存在(似乎不存在),那么您将得到您提到的namererror。在
zbc
E0
很难确定您到底想用这段代码做什么,所以我不确定该推荐什么。您可以指定字符串:
这将扩展到:
E0="zbc" E1="2.3"
仍然会得到索引器错误,因为数组a不是5个元素长。这对你来说应该是个容易的办法。在
好吧。这个代码很奇怪。在
作为这样的一行程序,它在语法上是不正确的,但我怀疑您由于某种原因而错过了换行符。但后来它变成了
但这将导致引用[i]时出现索引错误,如图所示:
^{pr2}$如果你避免这个问题,你会得到
在第二次通过lopp时,这也是一个语法错误。在
似乎您正在尝试使用this问题中标记的解决方案。在
如果您的目标是访问循环中的值,则应该使用列表。这种奇怪的带有数字的变量名概念在任何语言中都不应该使用。试试这个。在
这是一个由整数索引的值列表的正确方法,而不是将其放入变量名中。在
您生成的代码似乎扩展到:
在循环的下一次迭代中,您将得到一个IndexError异常,因为
a
只有两个元素长。在因此,鉴于上述情况,您正试图将
zbc
的值赋给E0
。如果zbc
不存在(似乎不存在),那么您将得到您提到的namererror。在很难确定您到底想用这段代码做什么,所以我不确定该推荐什么。您可以指定字符串:
^{pr2}$这将扩展到:
仍然会得到索引器错误,因为数组
a
不是5个元素长。这对你来说应该是个容易的办法。在相关问题 更多 >
编程相关推荐