gpt4 book ai didi

Python - 指定要在命令行上使用文件中的哪个函数

转载 作者:太空狗 更新时间:2023-10-30 01:40:16 24 4
gpt4 key购买 nike

假设您有一个程序,其中定义了多个函数。每个函数在单独的 for 循环中调用。是否可以通过命令行指定应该调用哪个函数?

例子:

python prog.py -x <<<filname>>>

-x 在哪里告诉 python 转到特定的 for 循环,然后执行在该 for 循环中调用的函数?

谢谢,海鲜。

最佳答案

主要入口点的 Python 习语:

if __name__ == '__main__':
main()

main() 替换为任何应该先执行的函数 ...(有关 if name ... 的更多信息:http://effbot.org/pyfaq/tutor-what-is-if-name-main-for.htm)

如果您想通过命令行参数指定要运行的函数,只需手动或通过一些帮助程序检查这些参数,例如http://docs.python.org/library/optparse.html ,然后分支到所需的函数。

如果你不想要这样的东西:

if options.function_to_call == 'mydesiredfunction':
mydesiredfunction()

您可以利用 getattr .

最后,使用 globals 的另一种“通用”方法(不包括异常处理):

$ cat 1933407.py

#!/usr/bin/env python
# coding: utf-8

import sys

def first():
print '1 of 9'

def second():
print '2 of 9'

def seventh():
print '7 of 9'

if __name__ == '__main__':
globals()[sys.argv[1]]()

同时在命令行...

$ python 1933407.py second
2 of 9

关于Python - 指定要在命令行上使用文件中的哪个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1933400/

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