如何在Ubuntu 14.10上为Python 3安装PyQt?

我在网上找到了一些适用于早期版本Ubuntu的教程,但它们似乎在Ubuntu 14.10上无法正常工作;要么是我操作方法不对。
我想使用Qt Designer来设计GUI界面,然后使用PyQt将其转换为.py文件,最后在Python中使用它。
为了实现这个目标,我需要安装哪些软件包?
4个回答

你所需的所有工具都包含在Ubuntu软件仓库中。您必须安装qtcreator软件包,其中包含一个integrated QtDesigner,以及pyqt5-dev-tools软件包,该软件包提供了从.ui文件生成Python代码的实用程序pyuic5

sudo apt-get install qtcreator pyqt5-dev-tools

2给那些跟随的人一个小提示。通过像import PyQt5这样导入,可以找到该模块。 - Ross Rogers

在终端中运行以下命令:

sudo apt-get install python3-pyqt5

sudo apt-get install qttools5-dev-tools

sudo apt-get install qtcreator pyqt5-dev-tools

运行位于以下位置的PyQt5 Designer:

/usr/bin/designer

运行PyQt5用户界面编译器(PYUIC5)将.ui文件转换为.py文件

pyuic5 gui.ui -o gui.py

运行PyQt5资源编译器(PYRCC5)将.qrc文件转换为.py文件

pyrcc5 images.qrc -o images_rc.py


嗯,我在这里记录了安装pyqt5和qt designer以及代码生成的步骤:https://gist.github.com/ujjwal96/1dcd57542bdaf3c9d1b0dd526ccd44ff 通过这个方法,你可以直接从Qt Designer生成代码。

安装

pip3 install --user pyqt5  
sudo apt-get install python3-pyqt5  
sudo apt-get install pyqt5-dev-tools
sudo apt-get install qttools5-dev-tools

配置以从终端运行

$ qtchooser -run-tool=designer -qt=5

或者

将以下内容写入/usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf文件中

/usr/lib/x86_64-linux-gnu/qt5/bin
/usr/lib/x86_64-linux-gnu

代码生成

创建uic.py文件。

#!/usr/bin/python3

import subprocess
import sys

child = subprocess.Popen(['pyuic5' ,'-x',sys.argv[1]],stdout=subprocess.PIPE)

print(str(child.communicate()[0],encoding='utf-8'))


$ chmod +x uic.py

创建一个符号链接:
$ sudo ln uic.py "/usr/lib/x86_64-linux-gnu/qt5/bin/uic"

桌面快捷方式

[Desktop Entry]
Name=Qt5 Designer
Icon=designer
Exec=/usr/lib/x86_64-linux-gnu/qt5/bin/designer
Type=Application
Categories=Application
Terminal=false
StartupNotify=true
Actions=NewWindow

Name[en_US]=Qt5 Designer

[Desktop Action NewWindow]
Name=Open a New Window
Exec=/usr/lib/x86_64-linux-gnu/qt5/bin/designer

将文件保存在~/.local/share/application目录下,并使用.desktop扩展名。

你把uic.py文件放在哪里了? - markling
我觉得在Ubuntu上我们不能执行pip3 install --user pyqt5 - S Andrew

  1. 安装 python3
  2. 安装 sip
  3. 安装 python3-pip
  4. 运行命令:pip3 install pyqt5

是pip还是sip? - Hafiz Shehbaz Ali
2可能是想使用sip-dev而不是sip,但在这里使用pip没有意义。Python 3版本的pip软件包管理器由python3-pip软件包提供,该软件包已经单独列出。SIP与PyQt有关。 mayur:你能否编辑一下,包括如何"安装sip"以及为什么要这样做的解释? - Eliah Kagan
我认为在Ubuntu系统中使用pip无法安装PyQt5。 - S Andrew