PyQt

PyQt היא ספרייה בשפת התכנות פייתון לצורך שימוש בערכת כלי התצוגה Qt, אשר זמינה במספר מערכות הפעלה שונות.

הספרייה פותחה על ידי פירמת המחשוב הבריטית "RiverBank Computing", ומופצת כקוד פתוח תחת רישיון GPL. היא תומכת במערכת ההפעלה Microsoft Windows וכן במספר מערכות הפעלה מבית UNIX, שביניהן לינוקס ו-MacOS.

PyQt מממשת כ-440 מחלקות ויותר מ-6000 פעולות, שביניהן:
 סט נרחב של כלים לפיתוח GUI.
 מחלקות שמאפשרות לגשת למסדי נתונים של SQL, כגון ODBC, MySQL, SQLite, Oracle, PostgreSQL.
 QScintilla, עורך טקסט בעל כלים נרחבים שמבוסס על ספרית Scintila.
 מהדר של XML.
 תמיכה ב-SVG.
 Qt-Designer - תוכנה שמאפשרת יצירה של ווידגטים (כגון כפתורים, תוויות, תיבות טקסט, וכו') באמצעות גרירה והזזה שלהם (לאחר מכן ניתן להמיר את התוצר לקוד בפייתון).

גרסאות 
גרסה 4 של PyQt תומכת הן ב-Qt 4 והן ב-Qt5. לעומת זאת, גרסה 5 של PyQt תומכת רק ב-Qt 5, והוסרה בה התמיכה בפיצ'רים שהגיעו לסיומם ב-Qt 5.

תוכנות שמשתמשות ב-PyQt 
להלן מספר תוכנות ראויות לציון אשר משתמשות ב-PyQt:
 Anki - תוכנה לשינון מידע באמצעות כרטיסים.
 Calibre - תוכנה לניהול ספרים אלקטרונים
 Eric Python IDE - סביבת פיתוח משולבת לשפת התכנות פייתון
 fman - מנהל קבצים חוצה פלטפורמות
 Frescobaldi - עורך לקובצי מוזיקה מסוג LilyPond
 Kodos - דיבאגר של ביטויים רגולריים בפייתון.
 Leo - עורך טקסט לתכנות
 Ninja-IDE - סביבת פיתוח משולבת בעלת קוד פתוח וניתנת להרחבה, לשפת התכנות פייתון.
 OpenShot - תוכנה לעריכת וידאו.
 Orange - תשתית לכריית מידע ותצוגה שלו.
 Puddletag - עורך סאונד חוצה פלטפורמות בעל קוד פתוח, מסוג ID3 tag editor.
 QGIS - תוכנת דסקטופ חינמית לצפייה, עריכה, וניתוח של מידע גאוגרפי.
 qt-recordMyDesktop - תצוגה גרפית לתוכנה recordMyDesktop.
 Spyder - סביבת פיתוח משולבת בפייתון, לצורך data science.
 TortoiseHg - תצוגה גרפית לתוכנת Mercurial.
 Veusz - כלי לסרטוט מדעי.

תוכנית Hello World 
תוכנית Hello World פשוטה ב-PyQt5:#! /usr/bin/env python3
# Character Encoding: UTF-8
#
# Here we provide the necessary imports.
# The basic GUI widgets are located in QtWidgets module.
import sys
from PyQt5.QtWidgets import QApplication, QWidget

# Every PyQt5 application must create an application object.
# The application object is located in the QtWidgets module.
app = QApplication(sys.argv)

# The QWidget widget is the base class of all user interface objects in PyQt5.
# We provide the default constructor for QWidget. The default constructor has no parent.
# A widget with no parent is called a window.
root = QWidget()

root.resize(320, 240) # The resize() method resizes the widget.
root.setWindowTitle("Hello, World!") # Here we set the title for our window.
root.show() # The show() method displays the widget on the screen.

sys.exit(app.exec_()) # Finally, we enter the mainloop of the application.

קישורים חיצוניים 

 

פייתון
תוכנה חוצת פלטפורמות