python中argparse 模块的基础知识。

1.首先本文借鉴博客园博主文章:

                             http://wiki.jikexueyuan.com/project/explore-python/Standard-Modules/argparse.html

2.argparse 究竟有什么用呢?

          对于程序开发中,我们难免要给出多个参数,各种参数的调用输入输出给我编程逻辑提出很大的挑战,而argparse模块则是一个对所有的参数进行统一个管理。对于一个python函数,有两种输入参数,定位参数和可选参数,也就是:optional arguments,positional arguments。对于前者,一旦设置了,就必须要给这样的参数,对于后者你可以不给,但是如果要给这样的参数则比前者麻烦。

3.我们常用argparse结构框架

# -*- coding: utf-8 -*-
import argparse
parser=argparse.ArgumentParser("This is a test progrom!") #对整个输入模块给出定义说明,

parser.add_argument("--square",type=int,default=2,help="display a square of a given number!")#添加optional arguments
parser.add_argument("area",type=int,default=4,help="display a square of a given number!")#添加positional arguments
....
....
....
....
....
....
....
....

args = parser.parse_args()#固定用法,通过这种方式,我们可以像引用对象一样来使用参数。

4.例子

# -*- coding: utf-8 -*-
import argparse

parser=argparse.ArgumentParser("This is a test progrom!")
parser.add_argument("--square",type=int,default=2,help="display a square of a given number!")
parser.add_argument("--area",type=int,default=4,help="display a square of a given number!")
args = parser.parse_args()
if args.square:
    print(args.square**2)
if args.area:
    print(args.area**2)

在命令行中输入:python args_test.py --h

在命令行中输入:python args_test.py --square 8 --area 9

下面来看看两种参数共用情况:

# -*- coding: utf-8 -*-
import argparse

parser=argparse.ArgumentParser("This is a test progrom!")
parser.add_argument("square",type=int,default=2,help="display a square of a given number!")
parser.add_argument("--area",type=int,default=4,help="display a square of a given number!")
args = parser.parse_args()
if args.square:
    print(args.square**2)
if args.area:
    print(args.area**2)

5.总结

对于这种结构,我们要学会去掌握框架,至于具体的可以直接网络搜索,算是一个比较简单的,方便的模块。

猜你喜欢

转载自blog.csdn.net/weixin_42325010/article/details/81430061