强制脚本在Python 3中运行
我有一个用Python3编写的脚本,在试验GUI时,我发现了一个我似乎喜欢的名为Kivy的脚本。每个人都说它与Python3一起工作,但每当我运行它时,它都会在Python2.7中运行。我怎么能这样呢 答:让Kivy完全在Python 3中运行 或 B:强制我的Kivy应用程序调用的脚本在Python 3中运行 我在OSX10.10上安装了Python3和Python2 我刚试过 myModule.py:强制脚本在Python 3中运行,python,macos,python-3.x,kivy,Python,Macos,Python 3.x,Kivy,我有一个用Python3编写的脚本,在试验GUI时,我发现了一个我似乎喜欢的名为Kivy的脚本。每个人都说它与Python3一起工作,但每当我运行它时,它都会在Python2.7中运行。我怎么能这样呢 答:让Kivy完全在Python 3中运行 或 B:强制我的Kivy应用程序调用的脚本在Python 3中运行 我在OSX10.10上安装了Python3和Python2 我刚试过 myModule.py: #!/usr/bin/env python3 import sys def getVer
#!/usr/bin/env python3
import sys
def getVersion():
return sys.version_info
在我运行的kivy myapp.py
中,它会打印一个标签,其中getVersion()是该标签的内容。
但这似乎仍然是2.7 她使用类似于
#!/usr/bin/env python3
在.py
文件的顶部。
或者,您可以将virtualenv
设置为使用命令行参数运行Python 3:
virtualenv -p /usr/bin/python3.4
OSX的包是为Python2.7构建的——它不会与Python3.x一起运行。虽然代码与任一Python版本兼容,但编译的部分必须针对其中一个而不是两个进行编译 您可以通过修改
kivy.sh
脚本并将命令从python2.7
更改为python3.3
,然后在包中输入kivy
文件夹并运行makeforce
,来使用Python 3.3。假设您已经为Python3安装了Cython(最好是版本0.21.2,不要使用0.22,因为它不会工作),那么这将为Python3重建。但是我没有OSX机器来检查这个,所以YMMV
最好的选择可能是等待,因为我们很快就会发布1.9.0版本,其中应该包括Python 3包。
#/GUI中的usr/bin/env python3
?您确定已安装python 3版本的Kivy吗?如果是这样,是否有两个kivy可执行文件(比如“kivy”和“kivy3”)?据我所知,没有两个版本。它只是说它支持Python3,但总是在2.7模式下运行virtualenv-p/usr/bin/python3.4导入系统打印(sys.version\u info)