繁体   English   中英

如何从变量调用函数? (Python)

[英]How do you call a Function from a Variable? (Python)

在您声称重复之前,我已查看以下内容:
带变量的python函数调用

从具有函数名称的字符串调用模块的函数

在 Python 中按变量名执行函数

https://ubuntuforums.org/showthread.php?t=1110989

还有更多,但没有运气。


我正在开发一个游戏。 现在我正在研究SAVE/LOAD功能,但我一无所获。

我想从另一个pytxt文件中获取一段文本,并让我的主py文件读取该文本,然后根据第二个文件中的文本字符串调用一个函数。


脚本1:

#imports

from script2 import SaveCode

#Code

def Test():
    print('Hello, World!')

callable(SaveCode)

脚本2:

SaveCode = Test()

这行不通。 有人可以帮帮我吗?

除非您使用不推荐的evalexec来评估该字符串,否则这将不起作用

据我所知,您在 script2 中有一个字符串,并希望根据该字符串在 script1 中执行一个函数。 您可以做的是定义一个字典,其中包含您已映射到要调用的函数的字符串:

脚本 1 中

#imports

from script2 import SaveCode

#Code

def Test():
    print('Hello, World!')

functions = {
    'Test': Test
}

# Assuming that SaveCode = 'Test' in your second script,
# look up the corresponding function
function_to_run = functions[SaveCode]
# and call it
function_to_run() # prints Hello, World!

脚本 2 中

SaveCode = 'Test'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM