Python内置模块argparse命令行参数解析

19次阅读
没有评论

共计 964 个字符,预计需要花费 3 分钟才能阅读完成。

这个库可在命令行中向程序传入参数并让程序运行。

import argparse

def main():
    parser = argparse.ArgumentParser(description="Demo of argparse")
    parser.add_argument('-n', '--name', default='Li', help="Enter the name")
    args = parser.parse_args()
    print(args)
    name = args.name
    print('Hello {}'.format(name))

if __name__ == '__main__':
    main()
  1. 首先导入 argparse 包,然后通过 argparse.ArgumentParser 生成对象,description 是在命令行模式时显示帮助信息
  2. 之后通过 parser.add_argument 向该对象中添加命令行参数和选项
  3. 最后使用 parser.parse_args 进行解析

add_argument() 方法添加命令行参数。其中,第一个参数是参数名,如果参数可选,可使用 – 开头的长选项,例如 –name。

在命令行执行语法及输出结果:

$ python test.py -n World 
Namespace(name='World')
Hello World

下面详细讲解 add_argument 函数的一些最常用参数。

type

默认情况下,ArgumentParser 对象以字符串的形式读取命令行参数。add_argument() 的 type 关键字参数允许执行任何必要的类型检查和类型转换。

import argparse

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("-A", default="2", type=float)
    parser.add_argument("-B", default="3", type=float)
    args = parser.parse_args()
    print("A+B:{} + {} =".format(args.A, args.B), args.A + args.B)

if __name__ == '__main__':
    main()

在命令行执行语法及输出结果:

$ python test.py
A+B:2.0 + 3.0 = 5.0

正文完
post-qrcode
 0
三毛
版权声明:本站原创文章,由 三毛 于2023-08-15发表,共计964字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)