命令行中 python -v 和 python -V 详解
看了好多帖子说 “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 环境。
命令行中 python -v 和 python -V 详解相关推荐
- Python 命令行解析器argparse及传参数详解
源码实例一 from argparse import ArgumentParserparser = ArgumentParser(description='Beeswarm')group = pars ...
- python脚本在命令行中传递参数(附字符查找小案例)
用命令行调用python脚本的时候,如果想往脚本中传递参数的时候,参数会被python解释器接收,并转换为一系列的字符串,放在sys模块中的argv列表中.因此,可以使用argv[0]来引用第一个参数 ...
- python object单引号变成双引号_Python学习第163课--Linux命令行中的单引号和双引号...
[每天几分钟,从零入门python编程的世界!] 我们都知道引号的作用就是为了引用,比如引用别人说的话,这句话就放在引号里面. 而Linux命令行中的single quote(单引号)和dubble ...
- python打包为可执行文件的扩展名,Python脚本文件(.py)打包为可执行文件(.exe)即避免命令行中包含Python解释器...
在最近的软件工程作业中用到了将Python脚本转化为exe文件这一过程,网上各种博客介绍了很多,有些东西都不完全,我也是综合了很多种方法最后才实现的,我就把这些整理出来,希望可以帮到大家~ 一.环境和 ...
- python3命令需要使用命令行开发者工具_3 个 Python 命令行工具
用 Click.Docopt 和 Fire 库写你自己的命令行应用. 有时对于某项工作来说一个命令行工具就足以胜任.命令行工具是一种从你的 shell 或者终端之类的地方交互或运行的程序.Git 和 ...
- python 命令行 模块_深入浅析Python 命令行模块 Click
Click 是用 Python 写的一个第三方模块,用于快速创建命令行.我们知道,Python 内置了一个 Argparse 的标准库用于创建命令行,但使用起来有些繁琐,Click 相比于 Argpa ...
- python命令窗口在哪里_详解如何在cmd命令窗口中搭建简单的python开发环境
详解如何在cmd命令窗口中搭建简单的python开发环境 1.快捷键win+r输入cmd回车调出cmd界面,在命令行输入python回车,显示python命令无法识别 2.登陆python官网http ...
- python中文读音ndarray-numpy中的ndarray方法和属性详解
NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数 ...
- python argv 详解_对python中的argv和argc使用详解
主要问题 为什么argv中第一个,即index=0的内容就是文件名? python中argc是用什么实现的? 概念解释 argc:argument counter,命令行参数个数 argv:argum ...
- python中3or5什么意思_示例详解Python3 or Python2 两者之间的差异
每门编程语言在发布更新之后,主要版本之间都会发生很大的变化. 在本文中,Vinodh Kumar 通过示例解释了 Python 2 和 Python 3 之间的一些重大差异,以帮助说明语言的变化. 本 ...
最新文章
- 【Java】Cloneable 接口讲解 (包含浅拷贝与深拷贝不一样的实现讲解)
- python最流行的框架_2020年最流行Python web开发框架(下)
- 我的2013-从GIS学生到GIS职业人的飞跃
- Java基础:HashMap的用法
- 用框架的你,可能早已忽略了这些事件API
- windows 全局变量_如何在Windows中使用全局系统环境变量
- leetcode 150. 逆波兰表达式求值(栈)
- 带C#示例的String.Equality(==)运算符
- 【机器学习】监督学习--KNN(最近邻)算法
- SQL2008--SQL语句-存储过程-触发器-事务处理-基本语法-函数
- python写sql语句_python3将变量写入SQL语句的实现方式
- java和eova的关系_Eova 1.1 发布,Java Web 快速开发平台
- 瑞星搜狐畅游合作 “云安全”首次嵌入网游客户端
- 基于Flash的开源网页播放器使用方法(FlowPlayer/AdobePlayer)
- Markdown 学习小记--进阶技巧-数学公式篇
- 21秋期末考试建设工程法规10221k1
- Nicolas Bourbaki 是何许人也,下一个中本聪?
- Python+bs4实现爬取小说并下载到本地
- STM32的存储器与寄存器
- 解决vuecli-vue2项目ie浏览器白屏