当前位置: 首页 > news >正文

阿里云万网网站个体工商户年检入口

阿里云万网网站,个体工商户年检入口,电子商务战略选择 网站建设建议,建设网站投资多少🐍 玩转 Python 命令行参数:从 -m 到 argparse 的全攻略 📌 摘要 在日常开发中,我们常常需要让 Python 脚本更灵活、更通用,而命令行参数正是实现这一目标的利器。本文将带你深入浅出地了解 Python 命令行参数的几种常…

🐍 玩转 Python 命令行参数:从 -margparse 的全攻略

📌 摘要

在日常开发中,我们常常需要让 Python 脚本更灵活、更通用,而命令行参数正是实现这一目标的利器。本文将带你深入浅出地了解 Python 命令行参数的几种常见用法,包括 -m 模块运行、sys.argv 参数读取、argparse 模块解析等技巧。无论你是在写自动化脚本、构建 CLI 工具,还是调试项目,这篇文章都能帮你少走弯路。


在这里插入图片描述

🎬 一、什么是命令行参数?

命令行参数是你在运行 Python 脚本时,通过命令行传递给程序的额外信息。比如:

python my_script.py hello world

这条命令中,helloworld 就是传给 my_script.py 的参数。


🧰 二、基础方式:sys.argv

这是最原始也最直接的方式,适合快速读取参数。

# script.py
import sysprint("脚本名:", sys.argv[0])
print("参数列表:", sys.argv[1:])

运行:

python script.py apple banana

输出:

脚本名: script.py
参数列表: ['apple', 'banana']

📌 注意:所有参数都是字符串类型,需要手动转换。


🧭 三、进阶方式:argparse 模块

如果你想要更强大的功能,比如设置默认值、类型校验、帮助信息等,argparse 是你的不二之选。

# cli_tool.py
import argparseparser = argparse.ArgumentParser(description="水果信息收集器")
parser.add_argument('--name', type=str, help='水果名称')
parser.add_argument('--count', type=int, default=1, help='数量')args = parser.parse_args()print(f"你选择了 {args.count}{args.name}")

运行:

python cli_tool.py --name=apple --count=3

输出:

你选择了 3 个 apple

🎯 优点:

  • 自动生成帮助信息
  • 支持类型转换和默认值
  • 错误提示友好

🚀 四、模块化运行:python -m

这是 Python 的隐藏宝藏之一。-m 参数允许你以模块的方式运行脚本,而不是直接指定文件路径。

✅ 示例:运行标准库模块

python -m http.server 8080

这会启动一个本地 HTTP 服务,方便调试网页或共享文件。

✅ 示例:运行你自己的模块

假设你有如下结构:

myproject/
├── __init__.py
└── runner.py

你可以这样运行:

python -m myproject.runner

📦 好处:

  • 更符合包结构
  • 方便部署和测试
  • 支持相对导入

🧵 五、其他常用命令行参数一览

参数作用
-c执行一段字符串代码:python -c "print('Hi')"
-i脚本执行后进入交互模式
-O启用优化(移除 assert)
-B不生成 .pyc 文件
-u强制使用非缓冲输出(适合日志)
-V显示 Python 版本
-h显示帮助信息

🧠 总结

命令行参数是 Python 脚本走向通用化、自动化的关键一步。掌握 sys.argv 可以快速读取参数,精通 argparse 能构建专业的 CLI 工具,而善用 -m 则让你的模块结构更清晰、运行更优雅。

📣 小贴士:如果你正在开发一个智慧厨房项目,不妨用 argparse 构建一个“菜单生成器”,让用户通过命令行指定口味、人数、设备等参数,自动生成个性化菜单。是不是很酷?


如果你喜欢这篇文章,欢迎点赞、收藏或分享给你的 Python 小伙伴们!下一篇我们可以聊聊如何用 clicktyper 构建更高级的命令行工具。你感兴趣吗?😄

http://www.dtcms.com/a/407814.html

相关文章:

  • 网站逻辑结构政务服务 网站 建设方案
  • NeurIPS 2025 | 时序方向硬核总结,又一顶会新方向!
  • CTF攻防世界WEB精选基础入门:get_post
  • 学校如何报销网站开发费用面馆装修设计
  • 游戏网站后台建设wordpress 登录框
  • 2025年--Lc161 --H80.删除有序数组中的重复项 II(数组和字符串)--Java版
  • datawhale RAG技术全栈指南 202509 第3次作业
  • 网站建设软件做淘宝一样的网站
  • 网页前端模板网站家里装修
  • 怎么避免网站开发后门上海怎么建设网站
  • 牛客算法题_查找
  • 数据结构算法学习:LeetCode热题100-子串篇(和为 K 的子数组、滑动窗口最大值、最小覆盖子串)
  • 投资网站模板太原做网站哪家好
  • 营销网站开发isuos常州seo外包
  • 网站的基础建设项目网站平台建设的作用
  • 【EE初阶 - 网络原理】Socket 套接字
  • 2025 9月25 最近两周的问题
  • golang做网站企业年金办法
  • 南京网站建设王道下拉??智能网站建设报价
  • 网站建设色系搭配企业简介介绍
  • 国内做网站的公司有哪些如何在局域网中做网站
  • wordpress仿站教程WordPress拍卖模板
  • app开发和网站开发的区别做同行的旅游网站
  • 做网站网站赚怎么买到精准客户的电话
  • 操作系统进程同步与互斥核心知识点复习
  • 网站推广方案中网站图片模板
  • 网站建设好处网络营销渠道
  • 网页模板免费资源整站优化包年
  • 网站图片动态换名一对一专属定制方案
  • 网站建设销售实习建筑网官网查证