在Python中以编程方式创建变量
发布于 2021-01-29 18:28:00
我有一个名为Variable的类,其定义如下:
class Variable():
def __init__(self, name):
self.name = name
self._value = None
def value(self):
return self._value
def __repr__(self):
return self.name
我想创建26个Variable的大写单字母实例,如下所示:
A = Variable('A')
B = Variable('B')
...
Z = Variable('Z')
到目前为止,我已经尝试了各种解决方案,而我想出的最好的解决方案是:
from string import uppercase
for char in uppercase:
exec "%s = %s" % (char, Variable(str(char))) in None
但是,这无法运行,并给我这个错误:
Traceback (most recent call last):
File "C:\Users\Administrator\Dev\python\truthtable\truthtable.py", line 7, in <module>
exec "%s = %s" % (char, Variable(str(char))) in None
File "<string>", line 1, in <module>
NameError: name 'A' is not defined
我究竟做错了什么?
关注者
0
被浏览
140
1 个回答