Installing PyQt4 in Windows + Python 3.6

As the title suggests, this article only applies to Python3.6 in Windows, and note that PyQt4, not PyQt5, will be installed. This is important because if you’ve ever used Python’s third party drawing libraries, Matplotlib and Seaborn, you’ve noticed that they both rely on PyQt4 (whatever PyQt5 does, it’s PyQt4, not PyQt5. If you have PyQt5 installed but don’t have PyQt4, you still can’t use them). In general, if you are using Anaconda3 as the Python interpreter, the Python version that contains PyQt4 can be viewed using conda list (the Python3.6 version comes with me). If, by some accident, PyQt4 is accidentally uninstalled, you use one of the two libraries mentioned above and it is “No module named PyQt4”, or “Pyqt4.gui, Pyqt4.core”, etc. There are several common ways to solve such problems online:
(1) Download The Windows Installers version of PyQt4 directly from the official website, namely the EXE file, and install it directly. Unfortunately, it looks like the official site has been revamped and I can’t find a ready version of Windows x 32 or x 64 for Python3.6 anyway.
(2) now the official website published the version of window after downloading is an uncompressed version, but not directly can be used, and need to re-make installation, more troublesome.
(3) a commonly used PIP or conda automatic installation does not reveal the existence of readily available resources for the Windows platform.
A very simple and efficient way to do this is to download it directly. WHL, which is available here (http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4), is a convenient way to choose between different Python versions, Windows 64bit or 32bit. After downloading, you can put the file into the Python installation directory, and then enter the CD into the directory under CMD or anaconda prompt. Enter the command, such as: PIP install pyqt4-4.11.4-cp36-cp36m-win_amd64. WHL , and wait for the completion of the installation. At this point, import seaborn as SNS or import matplotlib.pyplot as PLT can be executed normally.

Read More: