python 分行_你真的会使用 Python 命令吗?

本文介绍了Python命令行的不同使用方式,包括执行脚本文件、使用`-c`、`-m`选项以及`-i`选项。详细阐述了这些命令如何影响`sys.argv`和`sys.path`,并提到了在命令行中编写和执行Python代码的方法。此外,还介绍了argparse和click库用于创建自定义命令行接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我想你最常用到的 Python 命令就是运行 Python 脚本文件,像这样: python xxx.py 不过你知道为什么这样就可以直接执行 Python 代码么? 还有, Python 还有一些常用的命令可玩,你试过吗? 1bc6b328aaa34f6d939716ff11103026.png 接下来,就是学习 Python 的正确姿势: 17926fcadd3e55c3acbd1f8b3b9de5ec.png 我们来说说那些我们常用到的 Python 命令。 python xxx.py 当你通过 Python 执行脚本文件的时候,sys.argv[0] 会存储这个 py 文件名称: 53e388d8193788204f9ed0f92272e0c5.png 43ddddb71d603c4ddcc71a3376f75cef.png 而当你在 python xxx.py 后面再添加一些参数的时候,sys.argv 也同样可以接收到相关的参数: 9f9b0e82e64021d176f55486e2f34933.png 4fbc25ecdcdcbdae3f78cbaa42fcb01a.png 而且,它会把你的执行的 py 文件路径添加到 sys.path 中来,将它作为主模块来运行: 796489399050f4df3477d98f09fd2dd2.png 除了直接使用 python 执行脚本文件之外,你也可以使用 Python 执行整个 Python 项目目录或者压缩文件,不过在这里面你需要定义一个 __main__.py ,要不然解释器无法识别运行: 8f459144f1ed3a084f5201ba56e1fb08.png 而当你的目录中有定义 __main__.py 的时候,它就可以将 main 添加到 sys.path 中来,作为 main 模块执行: dc9d85dec0e70e8e748ee34887144cb1.png 除此之外,你还可以直接使用脚本的文件执行 Python 代码,在你的脚本文件的第一行定义 Python 环境: 6ea66a90ae4319d8f960ed35a88d3307.png 接着添加脚本文件的执行权限,然后就可以直接用脚本文件名称直接运行 Python 了: 5c278132bf998a460a0d859f5c5994bd.png python -c 使用 python -c 可以让你在命令行中写 Python 代码执行,可以使用 ; 进行代码分行: 76914047a7acd96dfbfb40cbc55d6226.png 一种更好的方式是使用空行对代码进行分行: 07597cf881172056182d2e4a8ad879ab.png 当你在 python 解释器中使用 -c 命令的时候,它会将 -c 添加到 sys.argv[0] 中,将当前的路径添加到 sys.path 中: 42a0e47ff13bf5d09ae471d127e5bfb9.png  python -m 使用 -m 模块可以以脚本的方式执行 Python 的模块或者包,因为执行的是模块,所以就不用像执行脚本文件那样把 .py 扩展名称写出来。 cd203c4eb8f3134802ef6264eeb3ab8f.png 65acf085994dc0f72c78e797cdd55e63.png 可以看到,模块的完全路径会添加到 sys.argv[0],将当前的路径添加到 sys.path 中,将模块名作为 main 执行。 你能体会到 python xxx.py 和 python -m xxx 之间的区别么? 当然,你也可以使用 -m 来执行包中的模块: 6a2828bd0c5bf53ca36e27a26c154df5.png 通过 -m 的形式,解释器会通过搜索路径找到相应的模块执行,这样你就不需要想执行 .py 那样写入文件的绝对路径啦。 使用 python -m 的一个常用场景是在不同的版本环境中执行相应的模块,比如使用 pip 安装模块的时候: 18b0fc229c9721113bb402602f3204d6.png dba9cdf062ab396b2ea0f210897db5d9.png d1e0243e7df2ba52d569e6076a944282.png  python -i 当你使用 -c 命令的时候,还想执行完相关代码后进入 Python 交互模式就可以使用 -i : 1dfb795415d2b55eb172854db466405c.png 还有其它的命令,你可以通过 python -h 找到相关的解释: 437ff944056c608e78f2e4780ac8a121.png 可能有时候你也想要提供一些命令给别人使用,Python 内置了一个 argparse 的库,你可以使用它来创建你要提供的命令,比如这样: aff3b57a4bd6b5afb75ded3c241c5ac6.png 执行的时候就可以使用相关的命令了: 6f2f07c09725184cf97cd1fdb4eaa5fa.png 除此之外,还有一个叫做 click 的第三方库,也是用来创建命令的,不同的是它可以用装饰器的方式实现,你可以直接使用 @click.option 来定义命令选项,用起来相对简单,这是一个官方的例子: 4cd1680a82af1f39bc164ff341793738.png 使用起来是这样的: 88d0d77041ac2de23d18d64c586d2374.png 4cebee06bf8a187b32231b2e1f671e39.png 当然,它还提供了多种创建命令的方式,你可以在以下链接中找到: https://click.palletsprojects.com/en/6.x/ ok,以上就是小帅b今天给你带来的分享,希望对你有帮助,那么我们下回见,peace! b05f1a7bb372ade6b635f6aabf2a59b9.gif 扫一扫 学习 Python 没烦恼 74e4591763584f3e997cc273444119ee.png 请拼命点赞
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值