创建虚拟环境时,我运行:
python3 -m venv env
我了解-m
executes a module(在这种情况下为venv
)。但是,-m
标志实际上代表什么?
模块是-m
,还是 -m
是__main__
?
我找不到明确的解释。这是我调查过的一些资源:
答案 0 :(得分:2)
在
1.1.1节
它清楚地表明-m
是模块名称here。
从文档中引用:
”“因为参数是模块名称,所以不能指定文件扩展名(.py)。模块名称应为有效的Python模块名称”
尽管-m
在后端是任意的,但它是一个argparser,可以完成所有工作。
当使用-m module-name调用时,给定的模块位于Python模块路径上并作为脚本执行
还允许使用包装名称。当提供软件包名称而不是常规模块名称时,解释器将执行<pkg>.__main__
并且我猜想main
也是以'm'开头是偶然的。
答案 1 :(得分:1)
它运行-m
之后的模块。参见the official documentation
文档中显示-m <module-name>
以及“由于参数是模块名称...”,因此有理由假设“ m”代表模块。