溪客(编程代码) 溪客(编程代码)

  • 今天是2025年08月20日 Wednesday
  • 首页
  • 知识
  • 网址
  • AI助手

Python

首页 / 知识 / Python
  • 基础
    • Conda
    • Jupyter
    • dump
    • CSharp2Python
    • 关于模块导入
    • 关于推导式
    • 关于元组
    • set和数组的区别
    • 关于Literal
    • 关于iter
    • 关于setup.py
    • 路径拼接
    • 方法命名约定
  • 库
    • 其他
    • argparse命令行参数解析
    • asyncio自带异步编程库
    • aiofiles异步文件读写库
    • beautifulsoup4_HTML_XML解析库
    • colorama_在终端输出漂亮的字
    • datasets数据集处理
    • html2text
    • httpx_HTTP请求库
    • litellm
    • loguru日志库
    • numpy科学计算基础库
    • pillow图像处理
    • pydantic数据验证
    • pyyaml
    • requests_HTTP请求库
    • tenacity重试
    • tiktoken计算Token量
    • torch机器学习_深度学习框架
    • tomli TOML文件解析库
    • tomllib 自带TOML文件解析库
    • unidiff_文本_文件差异对比
    • uvicorn_Web服务器
  • langchain
    • langchain-chatchat
    • langchain-qianfan
**argparse 是 Python 标准库中的一个模块,用于帮助开发者轻松编写用户友好的命令行接口(Command Line Interface,CLI)。** --- ## 一、argparse 是什么?(简单理解) - 当你运行一个 Python 脚本时,有时希望用户在命令行里传入一些参数,比如: ```bash python my_script.py --input data.txt --output result.txt ``` - **argparse 的作用就是:让你可以方便地定义脚本可以接受哪些命令行参数,解析用户输入的参数,并生成帮助信息。** - 它是 Python 内置的,无需安装第三方库,功能强大且易于使用。 --- ## 二、argparse 解决什么问题? 在没有 argparse 的情况下,如果你想让脚本接收命令行参数,通常只能通过 `sys.argv` 手动解析,比如: ```python import sys args = sys.argv[1:] # 获取所有参数 ``` 但这样处理很麻烦,比如: - 无法指定参数名称(如 `--input`) - 无法设置默认值 - 无法自动生成帮助信息 - 参数类型、必填校验都要自己写 **argparse 的作用就是:** > 让你通过几行代码就能定义脚本支持的命令行参数,自动解析用户输入,支持参数类型检查、默认值、帮助信息等,大大简化命令行工具的开发。 --- ## 三、argparse 基本使用示例 ### 示例:一个最简单的脚本,接收一个名字参数 ```python import argparse # 1. 创建解析器 parser = argparse.ArgumentParser(description="这是一个简单的命令行工具示例") # 2. 添加参数 parser.add_argument("name", help="请输入你的名字") # 3. 解析参数 args = parser.parse_args() # 4. 使用参数 print(f"你好, {args.name}!") ``` 运行方式: ```bash python script.py 小明 ``` 输出: ``` 你好, 小明! ``` --- ### 示例:带选项参数(比如 --input 和 --verbose) ```python import argparse parser = argparse.ArgumentParser(description="处理文件的工具") # 必选参数 parser.add_argument("filename", help="要处理的文件名") # 可选参数 parser.add_argument("--verbose", "-v", action="store_true", help="显示详细信息") parser.add_argument("--times", "-n", type=int, default=1, help="重复次数,默认为1") args = parser.parse_args() print(f"文件名: {args.filename}") print(f"详细模式: {args.verbose}") print(f"重复次数: {args.times}") ``` 运行方式: ```bash python script.py data.txt --verbose --times 3 ``` 或者简写: ```bash python script.py data.txt -v -n 3 ``` --- ## 四、argparse 常见功能 | 功能 | 说明 | |------|------| | **定义位置参数** | 必须提供的参数,比如 `script.py filename` | | **定义可选参数** | 以 `--` 或 `-` 开头的参数,比如 `--input file.txt` 或 `-i file.txt` | | **设置默认值** | 可选参数可以设置默认值,如 `default=1` | | **参数类型检查** | 比如 `type=int`,确保输入为数字 | | **布尔开关** | 如 `--verbose`,可用 `action="store_true"` 实现开关功能 | | **帮助信息** | 自动生成 `--help` 或 `-h` 的使用说明 | | **参数组、子命令** | 支持更复杂的 CLI 设计(比如 git 那样的子命令结构) | --- ## 五、总结(中文) > **argparse 是 Python 自带的标准库模块,用于解析命令行参数,可以让你轻松为脚本添加用户友好的命令行接口,支持定义参数、默认值、类型检查、帮助信息等功能,是开发命令行工具的必备工具。** --- ✅ **简单来说:** > **argparse 是 Python 内置的命令行参数解析工具,让你可以为 Python 脚本定义和解析各种命令行选项和参数,自动生成帮助信息,非常适合开发实用的命令行工具或脚本。**
© 2022 - 溪客(编程代码) - 粤ICP备10217501号 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)