根据另一个参数验证参数值

时间:2013-08-23 17:35:20

标签: python python-2.7 arguments argparse

我想根据另一个参数的值来验证参数。

SampleScript.py

    def parse_args():
        parser = argparse.ArgumentParser()
        parser.add_argument('-a', '--arg1', help="Year-Month or Year")
        parser.add_argument('-b', '--arg2', help="Needs Month from argument arg1", action="store_true")
        args = parser.parse_args()
        return args

     def main():
        args = parse_args()

     if __name__ == "__main__":
        main()

arg1的值可以采用YYYYYYYY-MM格式。但是,设置arg2后,我想确保传递的arg1的值格式为'YYYY-MM',而不是'YYYY'。

即当我运行python SampleScript.py -a 2011时,该程序应该可以正常工作。     当我运行python SampleScript.py -a 2011 -b时,程序应该抛出错误,因为-a不是YYYY-MM格式

是否可以使用argparse进行此类验证?

0 个答案:

没有答案