您当前的位置:首页 > 计算机 > 编程开发 > Python

命令行中 python -v 和 python -V 详解

时间:01-26来源:作者:点击数:

看了好多帖子说 “python -v 是包括库的版本号,而 python -V 才是版本号”,特意去搜了下官方文档,证实如上说法并不对,以下是详解:

来源:https://docs.python.org/3/using/cmdline.html#cmdoption-v

首先 python -V (大写)与 python --version 功能相同,将 python 版本打印并退出 python。

原话:“Print the Python version number and exit.”

实际运行图:

在这里插入图片描述

python -v (小写)是以一种特殊模式进入 python,该模式下每次有模块被初始化就会打印相应信息,展示载入的模块名或者内置模块。

原话:“Print a message each time a module is initialized, showing the place (filename or built-in module) from which it is loaded. ”

实际运行展示:

篇幅所限,截取部分显示。可以看到在运行完 python -v 之后,是进入了 python 环境中的,与直接进入 python 不同,多了很多载入模块的信息。此外当我尝试运行 import time 载入模块时,也出现了关于该模块的具体信息。最后当我用 exit() 命令退出 python 时,它将所有载入的模块清除再退出。

(base) PengfeideMacBook-Pro:~ ted$ python -v
import _frozen_importlib # frozen
import _imp # builtin
import '_thread' # <class '_frozen_importlib.BuiltinImporter'>
import '_warnings' # <class '_frozen_importlib.BuiltinImporter'>
# 篇幅所限,此处删掉诸多模块
import 'rlcompleter' # <_frozen_importlib_external.SourceFileLoader object at 0x105b35d10>


>>> import time
import 'time' # <class '_frozen_importlib.BuiltinImporter'>


>>> exit()
# clear builtins._
# clear sys.path
# 篇幅所限此处删掉诸多相似语句
# cleanup[3] wiping sys
# cleanup[3] wiping builtins

所以,python -v 并不是简单的展示版本和模块,而是以一种载入模块信息的形式启动 python 或进入 python 环境。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门