PyQt vs wxPython (German)
Tags: python, desktop, german, deutsch
Published: 2019-10-27 17:10:48

*practicing my german, let me know if any errors*

Python ist eine Programmiersprache die sowohl für Konsolenanwendungen als auch für Desktop-Software verwendet werden kann.

Spezifische Frameworks bieten eine GUI oder grafische Oberfläche für Python, aber die beiden am häufigsten verwendeten sind **wxPython** und **PyQt**.

Welche ist besser? Wir werden dieser vergleichen.

Sie sollten die <a href="https://pythonbasics.org">Grundlagen von Python</a> kennen, bevor Sie versuchen, GUIs zu erstellen.

## Vorteile von wxPython

Der kritischste Aspekt von <a href="https://www.wxpython.org/">wxPython</a> ist seine besondere Eigenschaft in Bezug auf die in C++ entwickelten Hauptbibliotheken.

Wenn Sie ein etwas erstellen, z.B. eine Schaltfläche oder ein Fenster, erhalten Sie kein Element, das so aussieht, als sollte es zu einem anderen Betriebssystem gehören. Sie erhalten als Ergebnis das Objekt, das Sie mit nativen Werkzeugen kodiert haben.

Mit wxPython müssen Sie möglicherweise mehrere plattformspezifische Änderungen an Ihrem GUI-Code vornehmen, basierend auf dem zu programmierenden Objekt.

<img src="https://res.cloudinary.com/practicaldev/image/fetch/s--93A1i2yS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/7zacuo3qsd5fnmsunxbp.png">

Als Beispiel denken Sie an das Flackern, das mit dem Entwerfen von Elementen unter Windows verbunden ist: Sie benötigen ein Attribut, um die Grafik zu verdoppeln, um es zu verhindern. Und das ist bei den Standardfunktionalitäten nicht vorhanden.

Auch wenn es wie ein Nachteil von wxPython erscheinen mag, kann man ihm mit einem gewissen Maß an Beherrschung der spezifischen Zulagen für wxPython begegnen.

wxPython eignet sich hervorragend für die Installation unter Linux oder Windows, aber der Installationsprozess unter Mac OS kann sich als problematisch erweisen. Auch wenn wxPython Ihnen Zugriff auf herausragende Funktionen verschafft, bietet es nicht die gleiche Flexibilität wie PyQt.

## Vorteile von PyQt

Nun, <a href="https://riverbankcomputing.com/software/pyqt/intro/">PyQt</a> basiert auf dem beliebten Qt-Toolkit und ist mit Hilfe von C++ geschrieben (PyQt ist eine Python-Bindung zum Qt Framework).

Ein Nachteil dieses Frameworks ist jedoch, dass es keine nativen Widgets verwendet. Stattdessen führt es zu einer Annäherung der Widgets, basierend auf der Art des erkannten Betriebssystems.

PyQt erlaubt die notwendigen Anpassungen, die Python selbst für eine außergewöhnliche Funktionalität benötigt. Meistens bleibt der GUI-Code identisch, unabhängig vom Betriebssystem.

<img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nNCUa_Dk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://external-content.duckduckgo.com/iu/%3Fu%3Dhttps%253A%252F%252Fi.stack.imgur.com%252F79FdX.png%26f%3D1%26nofb%3D1">

Daher ist ein Vorteil von PyQt gegenüber wxPython, dass es die meisten plattformübergreifenden Probleme verhindert, die bei der Programmierung auftreten können.

Ein weiterer Vorteil der Verwendung von PyQt könnte darin bestehen, dass der Prozess reibungslos verläuft, unabhängig davon, welches Betriebssystem Sie verwenden. Sie können auch Ihr eigenes Skript als Teil des Installationsprozesses erstellen, was wir mit Sicherheit sagen können, dass es eine schöne Funktion ist, Zugang zu haben.

Und PyQt wird vor allem wegen seiner Flexibilität empfohlen, mit der Sie Qt-Panels zur Laufzeit neu anordnen, schweben, schließen oder wiederherstellen können. Es ist eine der am besten konfigurierbaren benutzerfreundlichen Schnittstellen, auf die Sie stoßen werden.

## Was soll ich wählen?

Wenn Sie sich also fragen, was Sie zwischen PyQt und wxPython wählen sollen, können wir Ihnen sagen, dass es um die Stärken ihres Toolkits geht.

wxPython ist einfach und intuitiv, während es mit einer GUI verwendet werden kann. Meistens ist es die beste Wahl für diejenigen, die GTK installiert haben, da es Zugang zu Mindestabhängigkeiten erhält.

Andererseits stellt PyQt einen vertrauenswürdigen grundlegenden Rahmen dar, der aufgrund der beeindruckenden Menge an Ressourcen und Benutzergruppen häufig verwendet wird.

**Resources**
* <a href="https://gum.co/pysqtsamples">Course on PyQt Desktop Apps</a>
* <a href="https://pythonspot.com/wxpython-window/">wxPython tutorial</a>
* <a href="https://pythonbasics.org/pyqt-hello-world/">PyQt tutorial</a>