有人问过与此类似的问题,但我还没有看到有助于我的解决方案。
我正在运行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),但如果它不是针对初学者的,那对我来说就没有多大帮助。
答案 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文件。只需调整以适应您的设置。