在命令行中使用 Python 时,它可以接收大约 20 个选项(option),语法格式如下:
python [-bBdEhiIOqsSuvVWx?] [-c command | -m module-name | script | - ] [args]
本文想要聊聊比较特殊的“-m”选项:关于它的典型用法、原理解析与发展演变的过程。
首先,让我们用“--help”来看看它的解释:
-m mod run library module as a script (terminates option list)
"mod"是“module”的缩写,即“-m”选项后面的内容是 module(模块),其作用是把模块当成脚本来运行。
“terminates option list”意味着“-m”之后的其它选项不起作用,在这点上它跟“-c”是一样的,都是“终极选项”。官方把它们定义为“接口选项”(Interface options),需要区别于其它的普通选项或通用选项。
-m 选项的五个典型用法Python 中有很多使用 -m 选项的场景,相信大家可能会用到或者看见过,我在这里想分享 5 个。
在 Python3 中,只需一行命令就能实现一个简单的 HTTP 服务:
python -m http.server 8000 # 注:在 Python2 中是这样 python -m SimpleHTTPserver 8000
执行后,在本机打开“http://localhost:8000” ,或者在局域网内的其它机器上打开“http://本机ip:8000” ,就能访问到执行目录下的内容,例如下图就是我本机的内容:
与此类似,我们只需要一行命令“python -m pydoc -p xxx”,就能生成 HTML 格式的官方帮助文档,可以在浏览器中访问。