Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-变量名中的变量?_Python_Exec - Fatal编程技术网

Python-变量名中的变量?

Python-变量名中的变量?,python,exec,Python,Exec,我不确定这是否已经在这里,如果是的话,我很抱歉 我试图将一个变量的输出,在本例中是一个字符串,放入另一个变量“name”中,如果它被调用的话,但是使用exec并不理想,我不想将它全部放入exec函数中 在这段代码中,有没有任何方法可以完成我正在尝试做的事情 world = world[(x,y)].type exec("if blocks." + world + ".hasUp == True:") tick(taX,taY) 使用\uuuu dict\uuuu: >>&

我不确定这是否已经在这里,如果是的话,我很抱歉

我试图将一个变量的输出,在本例中是一个字符串,放入另一个变量“name”中,如果它被调用的话,但是使用
exec
并不理想,我不想将它全部放入exec函数中

在这段代码中,有没有任何方法可以完成我正在尝试做的事情

world = world[(x,y)].type 
exec("if blocks." + world + ".hasUp == True:")
    tick(taX,taY)

使用
\uuuu dict\uuuu

>>> def foo():
...     pass
... 
>>> a = "hello"
>>> foo.__dict__[a] = "world"
>>> foo.hello
'world'
globals()
用于全局变量(返回全局变量字典):

locals()
对于局部变量:

>>> name = "life"
>>> locals()[name] = "was like a box of chocolates"
>>> life
'was like a box of chocolates'

非常不清楚,但如果我理解您的意图,请不要使用
exec
but。(经验法则:切勿使用
exec
eval
)变量没有输出。请您重新表述您的问题,并通过将一个变量的输出置于另一个变量的“名称”中来明确变量是什么以及您的意思?请您详细解释一下这一点好吗?这是一个–您正在尝试解决某个未知问题,现在您问我们是否可以解决该问题。请添加更多的代码。除了usr2564301所说的,它看起来您试图动态创建变量/属性,这暗示了糟糕的设计
>>> name = "life"
>>> locals()[name] = "was like a box of chocolates"
>>> life
'was like a box of chocolates'