使用多个版本的Python

时间:2013-12-12 22:23:45

标签: python windows python-2.7 python-3.x

我的计算机上安装了Python 3.3和Python 2.7。 python 3.3工作正常,但是当我尝试使用python 2.7运行某些东西时,它仍然引用python 3.3。

例如:如果我输入F:\Python33\python33.exe test1.py,它将以3.3运行并且正常工作,但如果我输入F:\Python27\python27.exe test1.py则会出现此错误:

File "F:\PYTHON33\LIB\site.py", line 173
    file=sys.stderr)
        ^
SyntaxError: invalid syntax

注意:我已经将Python 2.7和3.3 .exe分别重命名为python27.exe和python33.exe。

任何帮助将不胜感激,谢谢。

7 个答案:

答案 0 :(得分:2)

Google搜索结果返回了一些可以解决问题的有用资源。

Python文档

Python文档(http://docs.python.org/3.3/using/windows.html#python-launcher-for-windows)提供了在同一台机器上运行多个版本的快速概述。

第一个选项是将你的python版本包含在你想要执行的文件中

  

#!蟒蛇   您的代码

在Python 2或

中执行
  

#! python3
  您的代码

用于在Python 3版本中运行代码。然后你只需使用“python yourscript.py”,python版本将由Python脚本指定。

StackExchange Sites

还有其他一些问题可以解决您所面临的问题:
How to install both Python 2.x and Python 3.x in Windows 7

或者对于Ubuntu 13:Ubuntu 13.04 Install and running Python 3 at the same time than Python 2.7.x

或者使用Homebrew的Mac:How can I use Homebrew to install both Python 2 and 3 on Mac?
没有自制软件的Mac视频参考:http://www.youtube.com/watch?v=c9LlK2iu7OA

答案 1 :(得分:2)

如果设置了python的多重版本,则会出现问题

文件" F:\ PYTHON33 \ LIB \ site.py",第173行     文件= sys.stderr)         ^ SyntaxError:语法无效

要解决此问题,请删除系统环境变量中的先前版本python enter image description here

答案 2 :(得分:0)

如果您想使用不同版本的Python,请尝试VirtualEnv

<强>更新 其他主题:Use different Python version with virtualenv

答案 3 :(得分:0)

更改可执行文件不是每个人的选择,卸载可能会破坏依赖于Python安装的程序。

我的答案并不保证您可以无缝地并排运行这两个版本,但我能够解决它而不需要像卸载这样重要的东西。

就我而言,问题是PYTHONPATHPYTHONHOME环境变量都设置为3.x安装路径,而我需要使用2.x安装。用2.x路径替换这些环境变量并重新启动shell对我来说是一个可接受的解决方法。

答案 4 :(得分:0)

PYTHONPATH环境变量设置为无可修复此问题。

答案 5 :(得分:0)

当我使用以下命令运行python文件时收到相同的错误 python filename.py 我的PYTHONPATH设置为使用python3

我通过使用以下命令运行文件来修复它

python3 filename.py

答案 6 :(得分:-2)

我通过删除=符号并简单地保留为sys.stderr

来解决此问题