不同版本的python的问题

时间:2013-01-10 16:35:25

标签: python windows version

有人问过与此类似的问题,但我还没有看到有助于我的解决方案。

我正在运行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),但如果它不是针对初学者的,那对我来说就没有多大帮助。

3 个答案:

答案 0 :(得分:4)

Windows Python Launcher可以自动检测文件中shebang的Python。

使用

启动Python 3.3脚本
#!/usr/bin/env python3

和你的Python 2.7脚本

#!/usr/bin/env python2.7

如果您想使用system's default Python version,只需使用

启动该文件即可
#!/usr/bin/env python

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

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

我使用的方法是在我的桌面上有几个cmd.exe快捷方式,每个快捷方式指向一个不同的runpython.bat文件,每个版本的python一个。以下是快捷方式中的一个命令示例:

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

这是典型的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%

当然,您不必像我一样调用.bat文件。只需调整以适应您的设置。