gpt4 book ai didi

python - 在 Python 中按名称调用顶级函数

转载 作者:太空宇宙 更新时间:2023-11-03 12:19:16 24 4
gpt4 key购买 nike

如何按名称调用顶级函数?例如,

#!/usr/bin/env python

import sys

def foo():
print 'foo'

def bar():
print 'bar'

# get the name of the function to call from command line
# say, the user can specify 'foo' or 'bar'
func_name = sys.argv[1]

# how do I invoke the function by func_name?
getattr(__main__, func_name) # NameError: global name '__main__' is not defined

最佳答案

最简单的方法是使用globals

globals()[func_name]()

您还可以通过在 sys.modules 中查找来获取当前模块对象。

getattr(sys.modules[__name__], func_name)()

关于python - 在 Python 中按名称调用顶级函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12667537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com