如何在argparse中使用条件语句?

时间:2019-01-18 08:36:27

标签: python python-2.7 parsing if-statement args

因此,我创建了具有两个不同标志的argparse。一个是-a,另一个是-b。当我运行带有特定标志的脚本 damage.py 时,我希望它能够根据传递的标志来执行功能。例如,如果我通过damage.py -t,它将如导入和打印hello中所示运行函数tester(),就像我通过-d一样,它将运行另一个功能。到目前为止,我的代码如下:

import argparse


def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("-a", "--export-date", action="store_true", required=True)
    parser.add_argument("-b", "--execute-test", action="store_true", required=False)


if __name__ == '__main__':
    main()

1 个答案:

答案 0 :(得分:0)

您可以像这样直接访问它们,而不是先将这些值保存到变量中:

if args.export_date:
    # Do something with date

if args.execute_test:
    tester()

这意味着,当您像python damage.py -dt一样运行程序时,它将同时运行日期块和测试程序块中的代码。