如何获取字符串中给定名称的变量的值?[副本]

这个问题在这里已经有答案了
如何创建变量?

(16个答案)

五年前关闭的

为了简单起见,这是我想做的一个精简版本:

def foo(a):
#我想打印变量的值
#其名称包含在

我知道如何在PHP中执行此操作:

函数foo($a){
回声$$a;
}
全局$string=“blah”//可能不需要是全球性的,但这无关紧要
foo(“字符串”);//打印“废话”

有办法吗

如果是全局变量,则可以执行以下操作:

&gt&燃气轮机&燃气轮机;a=5
&燃气轮机&燃气轮机&燃气轮机;globals()['a']
5.

关于各种“eval”解决方案的注意事项:您应该小心使用eval,特别是当您正在评估的字符串来自可能不受信任的源时——否则,如果您收到恶意字符串,您可能最终会删除磁盘的全部内容或类似内容

(如果它不是全局的,那么您将需要访问它在其中定义的任何名称空间。如果您没有该名称空间,您将无法访问它。)

发表评论