【问题标题】:Using multiple versions of Python使用多个版本的 Python
【发布时间】:2013-12-31 13:45:45
【问题描述】:

我的计算机上同时安装了 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。

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

【问题讨论】:

  • 您是否将PYTHONPATH 设置为环境变量?
  • 我的 PYTHONPATH 是 F:\PYTHON27;F:\PYTHON27\DLLs;F:\PYTHON27\LIB;F:\PYTH
  • 只有一个题外话。最好使用linux进行python开发,更容易更好。更容易拥有多个python版本和环境,更简单更好的终端,更容易编译c扩展,开源免费……

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


【解决方案1】:

Google 搜索结果返回了一些有用的资源来回答您的问题。

Python 文档

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

第一个选项是在你希望执行的文件中包含你的 python 版本,使用类似于

#! python
你的代码在这里

在 Python 2 中执行,或者

#! python3
你的代码在这里

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

StackExchange 站点

还有多个其他问题可以解决您面临的问题:
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?
以及没有 Homebrew 的 Mac 视频参考:http://www.youtube.com/watch?v=c9LlK2iu7OA

【讨论】:

  • 注意:Hashbang (#!) 在 Windows 上被忽略。您不能使用它来切换 Python 版本(但显示您期望的版本仍然是个好主意)。
  • @AaronDigulla Windows 上是否有任何等效功能?
  • 我不知道。您可以安装 MinWG 以获得类似 unix 的环境,但这只是一个仿真,您会注意到一些奇怪的地方。也许问一个新问题?
  • 如果您使用 py 启动器,Shebang (#!) 可以工作。
【解决方案2】:

如果设置了多版本的python,你会遇到问题

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

要解决此问题,请删除系统环境变量中设置的以前版本的 python

【讨论】:

  • 当它错误地调用另一个 site.py 时我得到了这个错误,然后我通过将 python 移动到路径的顶部来解决这个错误。
【解决方案3】:

PYTHONPATH 环境变量设置为 none 为我解决了这个问题。

【讨论】:

    【解决方案4】:

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

    更新: 给你的附加主题:Use different Python version with virtualenv

    【讨论】:

      【解决方案5】:

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

      我在这里的回答并不能保证您可以无缝地同时运行这两个版本,但是我能够在没有像卸载这样重要的事情的情况下解决它。

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

      【讨论】:

        【解决方案6】:

        我在运行我的 python 文件时收到了同样的错误 蟒蛇文件名.py 我的 PYTHONPATH 设置为使用 python3

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

        python3 filename.py
        

        【讨论】:

          【解决方案7】:

          我通过删除 = 符号并简单地保留为 sys.stderr 解决了这个问题

          【讨论】:

          • 你的意思是你修改了F:\PYTHON33\LIB\site.py?我不建议在 Python 安装中更改代码...
          猜你喜欢
          • 2020-08-20
          • 2015-05-04
          • 2019-03-24
          • 1970-01-01
          • 2019-02-01
          • 2014-01-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多