使用 argparse 运行相关函数[重复]

问题描述 投票:0回答:1

我使用 argparse 来指定多个命令行参数。我将如何运行与 argparse 命令行输入关联的特定函数?

考虑:

py test.py -s google.com

由于输入了参数

-s
,因此应运行与-s参数关联的特定函数
only

python python-3.x argparse
1个回答
0
投票

这里是一个非常简单的例子,使用argparse选项来触发特定的功能。

添加

-w
-s
作为参数后,您可以测试返回的命名空间对象以查看找到了哪些参数并相应地调用适当的函数。

main.py

import argparse


def sfunc():
    print("-s argument was found")

def wfunc():
    print("-w argument was found")


if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-w", action="store_true")
    parser.add_argument("-s", action="store_true")
    ns = parser.parse_args()
    if ns.s:
        sfunc()
    if ns.w:
        wfunc()

这是使用每个参数的结果

/>python main.py -s
-s argument was found

/>python main.py -w
-w argument was found

/>python main.py -w -s
-s argument was found
-w argument was found

还有很多其他方法可以达到同样的效果,这只是一个非常简单的例子。

© www.soinside.com 2019 - 2024. All rights reserved.