PyQt4和pyuic4
我正在尝试在使用osx 10.6的Mac上编译我的第一个.ui文件,使用的是PyQt4。可是我遇到了一个语法错误,我不太明白这是什么意思。
>>> import sys
>>> sys.path.append('/Users/womble/Dropbox/scratch/')
>>> from PyQt4 import QtCore, QtGui
>>> pyuic4 Urb.ui > Urb.py
File "<stdin>", line 1
pyuic4 Urb.ui > Urb.py
^
SyntaxError: invalid syntax
我试着在.ui文件的第一行添加了
#!/usr/bin/python2.5
但问题还是没有解决。
谢谢大家的建议。
3 个回答
我花了将近6个小时寻找合适的解决方案,这个页面上的步骤是我在我的Mac 10.6.8上找到的最准确的方法,效果非常好。
http://www.pythonsummerschool.net/index.php?url=mac_pyqt
现在我可以在终端上轻松地把*.ui文件转换成*.py文件了:
首先,你需要按照这个链接上的说明,把pyQt和sip以及所有相关的依赖项配置好。接下来,去到这个路径:/Applications/Python 3.2/Update Shell Profile.command,然后运行它。
检查一下你的路径变量:
env | grep PATH
确保所有的路径都指向你最新安装的Python。你可以通过再次运行这个命令来确认:/Applications/Python 3.2/Update Shell Profile.command
然后,你只需要简单地输入:
pyuic4 /Volumes/BOOTCAMP/yourfile.ui > /Volumes/BOOTCAMP/yourfile.py
祝你玩得开心!
我通常在命令行中使用 pyuic4
,方法如下:
pyuic4 -xo Urb.py Urb.ui
这里的 x
选项确保生成的 Python 代码包含一些额外的代码,这些代码可以在作为独立应用程序运行时创建和显示图形用户界面(GUI)。
而 o
选项则指定了要写入的输出文件(在上面的例子中是:Urb.py)。
你把Python和命令行指令搞混了。
这段是Python代码,可以在交互式的Python环境中执行:
import sys
sys.path.append('/Users/womble/Dropbox/scratch/')
from PyQt4 import QtCore, QtGui
而这段是应该在命令提示符或者终端窗口中运行的。你在Python解释器里运行它会出现语法错误,因为它不是Python代码:
pyuic4 Urb.ui > Urb.py