相关疑难解决方法(0)

如何查看运行我的脚本的Python版本?

如何检查Python解释器的哪个版本正在解释我的脚本?

python version

1099
推荐指数
11
解决办法
142万
查看次数

如何在运行时检测Python版本?

我有一个Python文件,可能必须支持Python版本<3.x和> = 3.x. 有没有办法反省Python运行时知道它正在运行的版本(例如2.6 or 3.2.x)?

python

261
推荐指数
6
解决办法
20万
查看次数

Python中sys.executable和sys.version之间不匹配

安装了两个Python解释器:

[user@localhost ~]$ /usr/bin/python -V && /usr/local/bin/python -V
Python 2.4.3
Python 2.7.6
Run Code Online (Sandbox Code Playgroud)

PATH它运行的每个命令的Sudo更改如下:

[user@localhost ~]$ env | grep PATH && sudo env | grep PATH
PATH=/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/user/bin
PATH=/usr/bin:/bin
Run Code Online (Sandbox Code Playgroud)

我运行一个测试脚本:

[user@localhost ~]$ cat what_python.py
#!/usr/bin/env python

import sys
print sys.executable
print sys.version
[user@localhost ~]$ sudo python what_python.py
/usr/bin/python
2.7.6 (default, Feb 27 2014, 17:05:07) 
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)]
Run Code Online (Sandbox Code Playgroud)

并获取Python 2.4.3 in sys.executable和2.7.6版中的路径sys.version.显然sys.executable,sys.version不匹配.考虑到sudo如何修改PATH,我可以理解它的价值sys.executable.但是,为什么sys.version报告版本2.7.6而不是版本2.4.3,它会匹配usr/bin/python报告的路径sys.executable

这是我的问题的后续事件Sudo更改PATH,但执行相同的二进制文件

python linux sudo env

9
推荐指数
1
解决办法
3719
查看次数

标签 统计

python ×3

env ×1

linux ×1

sudo ×1

version ×1