PyQt は、クロスプラットフォームGUIツールキットQtのPythonバインディングであり、Pythonプラグインとして実装されています。PyQt は、英国の Riverbank Computing 社が開発したフリーソフトウェアです。Qt バージョン 4.5 より前のバージョンと同様の条件で利用可能です。つまり、GNU General Public License (GPL) や商用ライセンスなどさまざまなライセンスが利用できますが、GNU Lesser General Public License (LGPL) は利用できません。[ 3 ] PyQt は、 Microsoft Windowsだけでなく、LinuxやmacOSを含むさまざまなUNIXをサポートしています。[ 4 ]
PyQt は約 440 のクラスと 6,000 を超える関数とメソッドを実装しています[ 5 ]。これには以下が含まれます。
これらのバインディングを自動的に生成するために、フィル・トンプソンはSIPというツールを開発しました。このツールは他のプロジェクトでも使用されています。
PyQtは1998年にRiverbank Computingによって初めてリリースされました。[ 8 ]
2009年8月、ノキアはPythonバインディングをLGPLライセンスで利用できるようにしようとした。当時、ノキアはQTの開発元であるQt Softwareを所有していた。Riverbank Computingとの合意に至らなかった後、ノキアは同様の機能を提供する独自のバインディングであるPySideをリリースした。[ 9 ]

PyQt4には以下のPythonモジュールが含まれています。
PyQt5には以下のPythonモジュールが含まれています。
PyQt バージョン 4 は Qt 4 と Qt 5 の両方で動作します。PyQt バージョン 5 は Qt バージョン 5 のみをサポートし[ 4 ] 、 Qt 5 で非推奨となった機能のサポートを終了します[ 11 ]。

PyQt6用に書かれた以下のコードは、画面上に小さなウィンドウを表示します。
#!/usr/bin/env python3"""ここでは必要な輸入品を提供します。基本的なGUIウィジェットはQtWidgetsモジュールにあります。"""import sysfrom PyQt6.QtWidgets import QApplication , QWidget# すべての PyQt アプリケーションは、アプリケーション オブジェクトを作成する必要があります。# アプリケーションオブジェクトはQtWidgetsモジュールにあります。app = QApplication ([])# QWidgetウィジェットは、PyQtにおけるすべてのユーザーインターフェイスオブジェクトの基底クラスです。# QWidget のデフォルト コンストラクタを提供します。デフォルト コンストラクタには親がありません。# 親ウィジェットを持たないウィジェットはウィンドウと呼ばれます。root = QWidget ()root.resize ( 320 , 240 ) # resize() メソッドはウィジェットのサイズを変更します。root.setWindowTitle ( "Hello, World!" ) # ここでウィンドウのタイトルを設定します。root.show () # show() メソッドはウィジェットを画面に表示します。sys.exit ( app.exec ( ) ) # 最後に、アプリケーションのメインループに入ります。{{cite web}}:欠落または空欄|title=(ヘルプ){{cite web}}:|first=一般的な名前を持っています (ヘルプ)