想要一个简单的argparse示例:1个参数,3个结果

发布于 2021-01-29 15:00:16

文档argparse
Python模块
,而优秀的我敢肯定,是太多了我的小初学者的大脑现在掌握。我不需要在命令行上进行数学运算,也不需要与屏幕上的格式化行混在一起或更改选项字符。我要做的就是
“如果arg是A,如果以上都不显示帮助并退出,则B这样做 。”

关注者
0
被浏览
104
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我对原始问题的理解是双重的。首先,就最简单的argparse示例而言,令我惊讶的是我在这里没有看到它。当然,简而言之,这几乎没有任何功能,而且开销很大,但这可能会让您入门。

    import argparse
    
    parser = argparse.ArgumentParser()
    parser.add_argument("a")
    args = parser.parse_args()
    
    if args.a == 'magic.name':
        print 'You nailed it!'
    

    但是,现在需要此位置参数。如果在调用该程序时将其遗漏,则会出现有关缺少参数的错误。这将我引到原始问题的第二部分。马特·威尔基(Matt
    Wilkie)似乎想要一个不带命名标签(–option标签)的 可选 参数。我的建议是修改以下代码:

    ...
    parser.add_argument("a", nargs='?', default="check_string_for_empty")
    ...
    if args.a == 'check_string_for_empty':
        print 'I can tell that no argument was given and I can deal with that here.'
    elif args.a == 'magic.name':
        print 'You nailed it!'
    else:
        print args.a
    

    也许会有一个更优雅的解决方案,但这是可行的并且是极简主义的。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看