你真的会使用 Python 命令吗?

本文详细介绍了Python中常用命令如sys.argv的作用,如何通过python-c和python-m执行Python代码和模块,以及python-i的交互模式。同时提到了argparse和click库用于创建命令的工具。

我想你最常用到的 Python 命令就是运行 Python 脚本文件,像这样:

python xxx.py

不过你知道为什么这样就可以直接执行 Python 代码么?

还有, Python 还有一些常用的命令可玩,你试过吗?

接下来,就是学习 Python 的正确姿势:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们来说说那些我们常用到的 Python 命令。

python xxx.py

当你通过 Python 执行脚本文件的时候,sys.argv[0] 会存储这个 py 文件名称:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

而当你在 python xxx.py 后面再添加一些参数的时候,sys.argv 也同样可以接收到相关的参数:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

而且,它会把你的执行的 py 文件路径添加到 sys.path 中来,将它作为主模块来运行:

除了直接使用 python 执行脚本文件之外,你也可以使用 Python 执行整个 Python 项目目录或者压缩文件,不过在这里面你需要定义一个 __main__.py ,要不然解释器无法识别运行:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

而当你的目录中有定义 __main__.py 的时候,它就可以将 main 添加到 sys.path 中来,作为 main 模块执行:

除此之外,你还可以直接使用脚本的文件执行 Python 代码,在你的脚本文件的第一行定义 Python 环境:

接着添加脚本文件的执行权限,然后就可以直接用脚本文件名称直接运行 Python 了:

python -c

使用 python -c 可以让你在命令行中写 Python 代码执行,可以使用 ; 进行代码分行:

一种更好的方式是使用空行对代码进行分行:

当你在 python 解释器中使用 -c 命令的时候,它会将 -c 添加到 sys.argv[0] 中,将当前的路径添加到 sys.path 中:

python -m

使用 -m 模块可以以脚本的方式执行 Python 的模块或者包,因为执行的是模块,所以就不用像执行脚本文件那样把 .py 扩展名称写出来。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以看到,模块的完全路径会添加到 sys.argv[0],将当前的路径添加到 sys.path 中,将模块名作为 main 执行。

你能体会到 python xxx.py 和 python -m xxx 之间的区别么?

当然,你也可以使用 -m 来执行包中的模块:

通过 -m 的形式,解释器会通过搜索路径找到相应的模块执行,这样你就不需要想执行 .py 那样写入文件的绝对路径啦。

使用 python -m 的一个常用场景是在不同的版本环境中执行相应的模块,比如使用 pip 安装模块的时候:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

python -i

当你使用 -c 命令的时候,还想执行完相关代码后进入 Python 交互模式就可以使用 -i :

还有其它的命令,你可以通过 python -h 找到相关的解释:

可能有时候你也想要提供一些命令给别人使用,Python 内置了一个 argparse 的库,你可以使用它来创建你要提供的命令,比如这样:

执行的时候就可以使用相关的命令了:

除此之外,还有一个叫做 click 的第三方库,也是用来创建命令的,不同的是它可以用装饰器的方式实现,你可以直接使用 @click.option 来定义命令选项,用起来相对简单,这是一个官方的例子:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用起来是这样的:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

当然,它还提供了多种创建命令的方式,你可以在以下链接中找到:

https://click.palletsprojects.com/en/6.x/

以上就是“你真的会使用 Python 命令吗?”的全部内容,希望对你有所帮助。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至优快云官方,朋友如果需要可以直接微信扫描下方优快云官方认证二维码免费领取【保证100%免费】。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值