脚本专栏 
首页 > 脚本专栏 > 浏览文章

为什么是 Python -m

(编辑:jimmy 日期: 2026/4/28 浏览:3 次 )

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

总结

上一篇:解决Keras中Embedding层masking与Concatenate层不可调和的问题
下一篇:Win10下用Anaconda安装TensorFlow(图文教程)
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?