[英]Shebang line for Python 2.7
我在我的Linux Centos中安装了Python2.7,它安装了默认的Python2.6,
默认Python
[root@linuxhost PythonProjects]# python -V
Python 2.6.6
默认Python2.7
[root@linuxhost PythonProjects]# python2.7 -V
Python 2.7.3
现在我需要编写基于python2.7版本的程序...... python2.7的shebang行是什么
另外,我将如何使用python2.7进行编译。
Shebang将是:
#!/usr/bin/env python2.7
我不确定你为什么要编译Python文件(Python会在你导入它们时自动完成)。
如果你真的想:
python2.7 -m compileall .
此命令将当前目录中的.py文件编译为.pyc:
我不认为只有一个sheebang线就能做到。
你可以试试投入
#! /usr/bin/env python2.7
虽然。 - 但真正与你保持一致的是通过virtualenv使用虚拟python环境。
请查看http://www.virtualenv.org/en/latest/virtualenv.html - 否则您将面临使用2.7 Python运行代码但尝试加载python 2.6模块和库的风险,以及更糟糕的情况。
此外,在系统中使用两个相同主要版本的Python的建议是将两者保持在不同的前缀中,例如/ usr中的系统,以及/ opt中的另一个(/ usr / local不足以清除分离)。
您可以将shebang更改为#!/usr/bin/env python2.7
。
或者你可以使用环境模块 ,让shebang成为#!/usr/bin/env python
。 当您加载python 2.7模块(可以是您的默认设置)时,脚本使用python 2.7运行,当您加载python 2.6模块时,脚本使用python 2.6运行。
在这个盒子上我安装了python 2.6和2.7。 根据加载的模块,运行所选的python版本。 始终为正确的版本加载库,模块和包。
$ cat t.py
#!/bin/env python
import sys
print(sys.version)
$ ./t.py
2.6.6 (r266:84292, Jul 10 2013, 22:48:45)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]
$ module load python/2.7.3
$ ./t.py
2.7.3 (default, Nov 7 2012, 16:29:59)
[GCC 4.7.2]
$
或者你可以使用virtualenv作为@jsbueno建议。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.