Python3+PyQt5+PyCharm开发环境配置

by LauCyun Jul 18,2017 18:07:56 70,017 views

我的开发环境:

  • Windows 10
  • JetBrains PyCharm 2017.1
  • Python 3.5.3
  • PyQt5 5.6
  • pyinstaller:将python代码打包为可执行的exe文件。

需要安装哪些东西呢?

  • sip
  • PyQt5
  • python

1 sip

什么是sip?

sip是RiverBank(也就是PyQt的开发商)开发的用于PyQt的Python/C++混合编程解决方案。由于Qt框架的复杂性,PyQt并没有使用Cython、SWIG的混合编程方案,而是自己单独做了一套框架。sip包括一个sip工具、SDK和Python Module。

与SWIG类似,使用sip也需要先编写一个『配置文件』,然后使用sip工具『编译』为C++源文件,最后,和Qt库一起编译形成适用于Python的PyQt。

与SWIG不同的是,sip同时以Python Module的形式存在,也就是说,作为Python Module的PyQt,依赖于作为Python Module的sip。而对于SWIG,一旦自动生成的C++生成完毕,整个流程就不再依赖SWIG了。

需要注意:

如果你安装了PyQt4和PyQt5,那么PyQt4和PyQt5无法共享sip。

就像 Python2 和 Python3 严格说不能共享pip 一样,因为有差异,解决方案就是给每个目录配置独立的Python环境(virtualenv)。

安装sip

方式1:pip安装

使用支持的Python版本,你可以从PyPi安装SIP通过运行:

pip3 install SIP

方式2:手动编译安装

下载地址:https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.1/sip-4.19.1.tar.gz(用于64位Linux,OS X和32位和64位Windows的Python v3.5及更高版本)。

编译安装步骤:

tar xvf sip-4.19.1.tar.gz
cd sip-4.19.1
python3 configure.py -d /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages
make
sudo make install

手动编译参考:http://www.cnblogs.com/tkinter/p/5632231.html

 

2 PyQt5

我的操作系统是64位的,安装的是Python3.5.3,所以我选择下载:PyQt5-5.6-gpl-Py3.5-Qt5.6.0-x64-2.exe,单击安装即可。

到这里需要安装的都安装完成了,下面需要把所以安装的东西配置起来。

 

3 配置PyCharm

在PyCharm中打开设置界面,输入Tools,点开External Tools。

1) 配置QtDesigner

点击左上角的加号,名称为QtDesigner,其Tool seetings内容如下:

  • Program选择designer.exe的路径:D:\Python\Python35\Lib\site-packages\PyQt5\designer.exe
  • Work directory使用变量$FileDir$

2) 配置PyUIC

用于把QtDesigner创建的UI文件转换成py文件。

点击左上角的加号,名称为PyUIC,其Tool seetings内容如下:

  • Program选择Python的路径:D:\Python\Python35\python3.exe
  • Parameters填入-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
  • Work directory使用变量$FileDir$

 

4 实战Hello PyQt5

用PyCharm创建一个项目名为hellopyqt5,打开QtDesigner程序写UI,写完再用PyUIC把UI文件转成py文件,如下图:

如果想启动看到hellopyqt5.ui的界面,我们需要写如下代码调用它:

import sys
import hellopyqt5
from PyQt5.QtWidgets import QApplication, QMainWindow

if __name__ == '__main__':
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()
    ui = hellopyqt5.Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

好了调用代码写好了,开始运行吧!运行结果:

看到了我们写的界面!到这为此,PyQt5的开发环境配置完成了!小伙子们,开始搞事情吧!

(全文完)

Tags