Home  >  Article  >  Backend Development  >  Complete collection of Python interface development libraries

Complete collection of Python interface development libraries

WBOY
WBOYforward
2023-04-11 14:58:032026browse

curses

Complete collection of Python interface development libraries

The built-in ncurses package is used to create a terminal graphical user interface. The curses library provides terminal-independent screen drawing and keyboard processing functions for text-based terminals. Now that graphical display interfaces are commonly used, interactive and more elegant terminals can be made in some niche markets, such as embedded Unix. Very nice.

enaml

enaml is a Python framework that allows you to implement high-quality GUI interfaces with minimal effort. It is also a unique programming language.

enaml combines a declarative language with a constraint-based layout system, allowing users to easily define flexible layouts of UI. enaml applications can run on any platform that supports Python and Qt.

enaml has the following features:

  • A declarative programming language with Python style
  • Dozens of widgets can be built directly on Qt
  • Constraint-based layout engine (built on Kiwi)
  • Integrated with data model tools (built on Atom)

kivy

Kivy is an open source The Python framework is used to quickly develop applications and implement various currently popular user interfaces, such as multi-touch and so on.

Kivy can run on most current mainstream desktop/mobile operating systems such as Windows, Linux, MacOS, Android, and iOS.

Kivy is based on Python and the design idea of ​​separating interface files and program files from each other. The design is simple and elegant, the syntax is easy to learn, and it is suitable for newcomers to get started.

pyglet

A Python cross-platform window and multimedia library that can be used for game development, audio and video processing, etc. It is lighter than pygame.

PyQt

The Python binding of the cross-platform user interface framework Qt supports Qt v4 and Qt v5. This is a veteran interface design library.

PySide

The difference between PySide and PyQt is that the former is a product of the Qt company and the latter is a product of a third-party company. The usage of the two is basically the same, but there are big differences in the usage agreement. The difference is that PySide can be used under the LGPL license, while PyQt can be used under the GPL license.

Tkinter

Tkinter is a built-in GUI standard library of Python GUI. Its syntax is simple and easy to learn, suitable for beginners. Practice.

Toga

A Python-native, operating system-native GUI toolkit.

urwid

A library used to create terminal GUI applications, supporting components, events, rich colors, etc.

Complete collection of Python interface development libraries

wxPython

wxPython is a cross-platform GUI toolkit for Python written in C, which allows Python programmers to simply and easily Program for creating powerful graphical user interfaces. It currently supports platforms including Microsoft Windows, Mac OS X and macOS, as well as Linux or other unix-like systems with GTK2 or GTK3 libraries.

PyGObject

PyGObject is a Python package that provides bindings for GObject-based libraries (such as GTK, GStreamer, WebKitGTK, GLib, GIO, etc.). These libraries can support the GTK 3 graphical interface toolset, so GObject provides a rich set of graphical interface components. It supports Linux, Windows and macOS.

Flexx

Flexx is a tool set written in pure Python language for creating GUI programs. It uses web technology to display the interface. The application is written entirely in Python, with the PScript translator dynamically generating the necessary JavaScript. Flexx can be used to create (cross-platform) desktop applications, web applications, and export applications to standalone HTML documents.

Eel

Eel is a lightweight Python library for making simple offline HTML/JS GUI applications similar to Electron (but more lightweight than it), and has the ability to Full access to Python capabilities and libraries.

Eel hosts a local web server and then allows you to annotate functions with Python so that they can be called from JavaScript and vice versa.

PySimpleGUI

It is a wrapper for tkinter, Qt, WxPython and Remi. By implementing most of the "boilerplate code", it is simpler and shorter than writing directly using the underlying framework. As you can tell from the name, it is easy to use, but not particularly beautiful in terms of appearance.

pywebview

pywebview is a lightweight cross-platform application container containing the WebView component, which can display HTML content in the native GUI window. Applying the power of Web technologies in desktop applications without the browser hiding the fact that the GUI is browser-based. You can use a lightweight web framework like Flask or Bottle with pywebview, or standalone with a two-way bridge between Python and the DOM.

DearPyGui

Dear PyGui is a simple to use (yet powerful) Python GUI framework. It is not a wrapper for Dear ImGui in the general sense, but a library built with Dear ImGui that emulates a traditional retained mode GUI (as opposed to Dear ImGui's direct mode paradigm). Dear PyGui is also fundamentally different from other Python GUI frameworks. Under the hood, Dear PyGui uses real-time mode paradigms and your computer's GPU to facilitate extremely dynamic interfaces. Dear PyGui currently supports the following platforms: Windows 10, macOs, Linux, Raspberry Pi 4.

EasyGUI

EasyGUI is a very simple and easy GUI programming module using Python. It is different from other GUI libraries because EasyGUI is not event-driven, instead all its GUI interactions are invoked through simple function calls and does not require the programmer to know anything about tkinter, frameworks, widgets, callbacks or lambdas .


The above is the detailed content of Complete collection of Python interface development libraries. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:51cto.com. If there is any infringement, please contact admin@php.cn delete