Python 的 argparse 库是 Python 内置的命令行解析库,它可以帮助我们解析命令行参数并根据不同的参数执行不同的逻辑。下面是 argparse 库的基本使用步骤:
步骤一:导入 argparse 库
import argparse
在正式开始使用 argparse 库时,我们需要先导入 argparse 库。
步骤二:创建 ArgumentParser 对象
parser = argparse.ArgumentParser(description='Some description here.')
创建 ArgumentParser 对象,并传入一个字符串作为参数描述。
步骤三:添加命令行参数
parser.add_argument('input_file', help='Input file path')
parser.add_argument('-o', '--output-file', help='Output file path')
parser.add_argument('--verbose', action='store_true', help='Verbose output')
使用 add_argument() 方法向 ArgumentParser 对象中添加命令行参数。其中第一个参数为参数名称或参数列表,第二个参数为参数描述,第三个参数为参数类型。
步骤四:解析命令行参数
args = parser.parse_args()
使用 parse_args() 方法解析命令行参数,并将结果保存到 args 对象中。
示例说明一:
import argparse
parser = argparse.ArgumentParser(description='Add two numbers.')
parser.add_argument('num1', type=int, help='First number')
parser.add_argument('num2', type=int, help='Second number')
parser.add_argument('-v', '--verbose', action='store_true', help='Verbose mode')
args = parser.parse_args()
result = args.num1 + args.num2
if args.verbose:
print(f'{args.num1} + {args.num2} = {result}')
else:
print(result)
以上代码中我们创建了一个程序,功能是计算两个整数的和。代码中第 5-8 行向 ArgumentParser 对象中添加了两个必须的参数,即两个整数,第 9 行添加了一个可选参数,用于控制输出模式。在解析命令行参数后,我们可以通过 args.num1 和 args.num2 获取到用户输入的两个整数,并根据需要输出结果或输出运算过程。
如果我们只想输出结果而不显示运算过程,我们可以在命令行中输入以下命令:
python program.py 2 3
运行结果为:
5
如果我们想控制程序输出运算过程,我们可以在命令行中输入以下命令:
python program.py 2 3 -v
运行结果为:
2 + 3 = 5
示例说明二:
import argparse
parser = argparse.ArgumentParser(description='Get user name and age.')
parser.add_argument('-n', '--name', required=True, help='User name')
parser.add_argument('-a', '--age', type=int, required=True, help='User age')
parser.add_argument('--verbose', action='store_true', help='Verbose mode')
args = parser.parse_args()
if args.verbose:
print(f'User name: {args.name}')
print(f'User age: {args.age}')
else:
print(f'{args.name} is {args.age} years old.')
以上代码中我们创建了一个程序,功能是获取用户的姓名和年龄。代码中第 5-8 行向 ArgumentParser 对象中添加了两个必须的参数,即用户名和年龄,第 9 行添加了一个可选参数,用于控制输出模式。在解析命令行参数后,我们可以通过 args.name 和 args.age 获取到用户输入的姓名和年龄,并根据需要输出结果或输出详细信息。
如果我们只想输出姓名和年龄,我们可以在命令行中输入以下命令:
python program.py -n Alice -a 20
运行结果为:
Alice is 20 years old.
如果我们想输出详细信息,我们可以在命令行中输入以下命令:
python program.py -n Alice -a 20 --verbose
运行结果为:
User name: Alice
User age: 20
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python argparse库的基本使用步骤 - Python技术站