Python中使用eval执行下面函数的结果怎么是字符串’'?
最近在Python中执行一个包含变量名的字符串时遇到了一个奇怪的问题:使用 eval() 函数执行某个函数,却返回了一个空字符串。经过查阅和尝试,我终于找到了解决方法。
首先,让我们看一下这个函数:
def myfunc():
print("Hello World!")
现在,我们将这个函数的名称转换成一个字符串并将其存储在变量 func_name 中:
func_name = "myfunc"
本文探讨了在Python中使用eval执行函数时遇到的一个问题:返回结果为字符串' '。文章解释了原因——eval函数返回的是最后一个表达式的值,在这种情况下是空字符串。解决方案是使用globals()获取函数并直接调用,以得到正确输出。
Python中使用eval执行下面函数的结果怎么是字符串’'?
最近在Python中执行一个包含变量名的字符串时遇到了一个奇怪的问题:使用 eval() 函数执行某个函数,却返回了一个空字符串。经过查阅和尝试,我终于找到了解决方法。
首先,让我们看一下这个函数:
def myfunc():
print("Hello World!")
现在,我们将这个函数的名称转换成一个字符串并将其存储在变量 func_name 中:
func_name = "myfunc"
768
337

被折叠的 条评论
为什么被折叠?