前言
今天来学习命令行参数解析。我们主要学习的是一个标准库----argparse。
argparse 是 Python 内置的一个用于命令项选项与参数解析的模块,通过在程序中定义好我们需要的参数,argparse 将会从 sys.argv 中解析出这些参数,并自动生成帮助和使用信息。当然,Python 也有第三方的库可用于命令行解析,而且功能也更加强大,比如 docopt,Click。
一、一个例子
我们先看一个例子。
# -*- coding: utf-8 -*-
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('integer', type=int, help='display an integer')
args = parser.parse_args()
print(args.integer)
我们直接运行上面的代码。
D:\Users\Administrator\PycharmProjects\LeetCodePracitse\venv\Scripts\python.exe D:/Users/Administrator/PycharmProjects/LeetCodePracitse/demo1.py
usage: demo1.py [-h] integer
demo1.py: error: the following arguments are required: integer
Process finished with exit code 2
会报上如错误。
对于这种带命令行参数解析的代码,我们的运行方式是不能直接运行的。
我们要在终端运行。
(venv) D:\Users\Administrator\PycharmProjects\LeetCodePracitse>python demo1.py 10
10
(venv) D:\Users\Administrator\PycharmProjects\LeetCodePracitse>python demo1.py