python -m 和 python 的区别

-m 的含义表示将库当作脚本来执行。

python file.py

正常的执行Python脚本似乎都是这个样子,甚至于有些小伙伴根本不晓得 -m 是个什么玩意。

在help 中对 -m 的解释为: 将文件看作脚本来执行。

什么叫当成脚本来执行呢?我们来看看

编写简单的测试脚本 bar.py

import sys
 
print('sys.path len is %s.' % sys.path.__len__())
for path in sys.path:
  print(path)

然后分别执行看结果

python -m bar # bar !!!不是 bar.py 坑!!!

为什么是 Python -m

由此,第一行也就是最后添加进来的环境变量是空, 代表的含义是当前文件夹。也就是你命令执行的目录

python bar.py

为什么是 Python -m

第一行为绝对路径,文件所在的目录。而不是脚本执行的目录。

注意

1 -m 参数 后面 不能跟 .py 相当于 import bar

2 -m 支持 . 语法 python -m http.server 启动 一个web服务器

PS:下面看下python -m的含义

1.简单说就是:执行某个模块下的文件

2.python -m后面参数的形式是模块名.文件名

可以将模块以脚本的方式运行。和python file.py的运行方式区别来看。

使用这个命令会在library path中搜索执行py文件,而不是只在current library。

3.在python参数说明中的解释为:

run library module as a script.

为什么是 Python -m

总结

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。