下面是 Python 脚本传参数 argparse 模块的使用攻略。
什么是 argparse 模块
argparse 是 Python 标准库中的一个命令行解析工具,可以帮助开发者构建用户友好的命令行程序,包括定义可选参数、必选参数、默认值、参数类型、帮助信息等。argparse 模块可以帮助你管理命令行中的参数和选项。
安装 argparse 模块
argparse 是 Python 2.7 和 Python 3.2 及以上版本的标准库,可以直接在 Python 中使用。如果你使用的 Python 版本低于 3.2,则需要先安装 argparse,在命令行中执行以下命令:
pip install argparse
使用 argparse 模块
使用 argparse 模块的步骤如下:
- 导入 argparse 模块:
import argparse
- 创建 ArgumentParser 对象,用于管理命令行的参数和选项:
parser = argparse.ArgumentParser(description='Description of your program')
- 添加命令行参数和选项:
parser.add_argument('arg1', help='description of arg1')
parser.add_argument('--option1', help='description of option1', default='default value')
parser.add_argument('--option2', choices=['choice1', 'choice2'], help='description of option2')
- 解析命令行参数和选项:
args = parser.parse_args()
- 获取参数和选项的值:
arg1 = args.arg1
option1 = args.option1
option2 = args.option2
以下是两个详细的使用示例:
示例一:简单示例
这个示例演示一个简单的使用 argparse 的 Python 脚本,命令行参数只有一个必选参数。
import argparse
parser = argparse.ArgumentParser(description='Calculate the sum of two numbers')
parser.add_argument('num1', help='number 1')
parser.add_argument('num2', help='number 2')
args = parser.parse_args()
num1 = float(args.num1)
num2 = float(args.num2)
sum = num1 + num2
print('The sum of {} and {} is {}'.format(num1, num2, sum))
使用方式:
python script.py 3.14 2.718
输出结果:
The sum of 3.14 and 2.718 is 5.858
示例二:复杂示例
这个示例演示一个较为复杂的使用 argparse 的 Python 脚本,命令行参数和选项较多。
import argparse
parser = argparse.ArgumentParser(description='Description of your program')
parser.add_argument('arg1', help='description of arg1')
parser.add_argument('--option1', help='description of option1', default='default value')
parser.add_argument('--option2', choices=['choice1', 'choice2'], help='description of option2')
group1 = parser.add_mutually_exclusive_group(required=True)
group1.add_argument('--option3', action='store_true', help='description of option3')
group1.add_argument('--option4', metavar='FILE', type=argparse.FileType(), help='description of option4')
args = parser.parse_args()
arg1 = args.arg1
option1 = args.option1
option2 = args.option2
if args.option3:
print('Option 3 is enabled')
if args.option4:
f = args.option4
contents = f.read()
print(contents)
使用方式:
python script.py argvalue --option1 optionvalue --option2 choice1 --option3
python script.py argvalue --option1 optionvalue --option2 choice2 --option4 filename.txt
第一种方式输出结果:
Option 3 is enabled
第二种方式如果 filename.txt 中的内容是 Hello, world!
,则输出结果为:
Hello, world!
这是 argparse 模块的基本使用方法,更详细的信息可以参考 Python 的官方文档。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python脚本传参数argparse模块的使用 - Python技术站