1

已提出与此类似的问题,但我还没有看到对我有帮助的解决方案。

我正在运行 Windows 7,并且安装了两个版本的 python,3.3 和 2.7。Python 3.3 是我安装的第一个版本,我能够从桌面(而不是命令行)运行脚本。我安装了 python 2.7,以便以后可以使用 numpy、scipy 和 matplotlib,但我发现我桌面上的所有脚本都默认为 python 2.7。由于我在 3.3 中编码,这导致了一些问题。

我可以通过右键单击脚本图标、浏览程序、导航到我的 C: 驱动器中的 python 3.3 文件并选择该目录中的空闲来解决此问题。但后来我发现我无法使用完全相同的过程在 python 2.7 中运行这些脚本。

不幸的是,我根本不太了解命令行编程,而且似乎大多数答案都是针对该解决方案的。理想情况下,我想指定要从桌面运行脚本的python,或者可能在我编辑脚本时。

如果相关,我正在运行 eric python IDE,版本 5。

我很乐意阅读一些相当技术性和冗长的东西(如博客文章或 PDF),但如果它不针对初学者,它对我没有多大帮助。

4

3 回答 3

4

Windows Python 启动器可以自动从文件中的shebang中检测 Python。

启动您的 Python 3.3 脚本

#!/usr/bin/env python3

和你的 Python 2.7 脚本

#!/usr/bin/env python2.7

如果你想使用系统默认的 Python 版本,你可以用

#!/usr/bin/env python

这也适用于几乎所有的 Unix 系统。

于 2013-01-10T16:37:58.077 回答
1

The method I use is to have several cmd.exe shortcuts on my desktop, each pointing at a different runpython.bat file, one for each version of python. Here is one command example from a shortcut:

%comspec% /k "C:\QA\Python\QAPYTH3\runpython.bat"

Here is a typical runpython.bat:

@SET PATH=%PATH%;"C:\Python32"
@SET PYTHONPATH=C:\Python32\Lib

@ASSOC .py=Python.File
@ASSOC .pyc=Python.CompiledFile
@ASSOC .pyo=Python.CompiledFile
@ASSOC .pyw=Python.NoConFile

@FTYPE Python.CompiledFile="C:\Python32\python.exe" "%%1" %%*
@FTYPE Python.File="C:\Python32\python.exe" "%%1" %%*
@FTYPE Python.NoConFile="C:\Python32\pythonw.exe" "%%1" %%*
@SET PATHEXT=.py;%PATHEXT%

Of course you don't have to call your .bat files the same as I have. Just adjust to suite your setup.

于 2013-01-10T17:16:42.770 回答
1

也许你应该选择另一个 IDE,比如PyCharm,它可以轻松管理不同版本的 python(并提供大量其他有用的功能)。也许免费的 PyDev 也可以做到。

此外,使用virtualenv — 是这里最好的解决方案,但这是一个“艰难的方式”。

于 2013-01-10T16:40:36.167 回答