Maison développement back-end Tutoriel Python Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !

Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !

Aug 10, 2023 pm 04:24 PM
python Bibliothèque GUI


GUI (interface utilisateur graphique), comme son nom l'indique, utilise des graphiques pour afficher l'interface de fonctionnement de l'ordinateur, qui est plus pratique et intuitive.


CUI (Command Line User Interaction) y correspond, qui est une opération courante en ligne de commande Dos. Elle nécessite la mémorisation de certaines commandes couramment utilisées. Pour les gens ordinaires, il est encore difficile d'apprendre à fonctionner. . Assez élevé.


Une interface graphique élégante et facile à utiliser peut grandement améliorer l'expérience et l'efficacité de chacun.


Par exemple, si vous souhaitez développer une calculatrice, s'il ne s'agit que d'une fenêtre d'entrée et de sortie de programme, il n'y aura aucune expérience utilisateur.


Il devient donc nécessaire de développer une petite fenêtre graphique.


Aujourd'hui, Xiao F vous présentera sept bibliothèques GUI essentielles pour Python, dont chacune mérite d'être apprise.



01.5Développé par Riverbank Computing. Construit sur le framework Qt, il s'agit d'un framework multiplateforme capable de créer des applications pour diverses plates-formes, notamment : Unix, Windows et Mac OS.


PyQt combine Qt et Python. Ce n'est pas seulement une boîte à outils GUI. Sont également inclus les threads, Unicode, les expressions régulières, les bases de données SQL, SVG, OpenGL, XML et un navigateur Web complet, ainsi que de nombreuses riches collections de widgets GUI.


Utilisez pip pour l'installer.


# 安装PyQt5
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5


Après une installation réussie, voici un exemple simple de Hello Word.


import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout

# 建立application对象
app = QApplication(sys.argv)
# 建立窗体对象
w = QWidget()
# 设置窗体大小
w.resize(500, 500)

# 设置样式
w.layout = QVBoxLayout()
w.label = QLabel("Hello World!")
w.label.setStyleSheet("font-size:25px;margin-left:155px;")
w.setWindowTitle("PyQt5 窗口")
w.layout.addWidget(w.label)
w.setLayout(w.layout)

# 显示窗体
w.show()
# 运行程序
sys.exit(app.exec_())

Les résultats sont les suivants.


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !


Adresse du document :

https://riverbankcomputing.com/software/pyqt/intro

Lien du tutoriel :

https://www.guru99.com/pyqt-tutorial.html



02.


Tkinter est l'une des bibliothèques GUI les plus populaires en Python. En raison de sa syntaxe simple et facile à apprendre , il est devenu l'un des premiers choix pour les débutants en développement GUI.


Tkinter fournit divers widgets tels que des étiquettes, des boutons, des champs de texte, des cases à cocher et des boutons de défilement, etc.


Prend en charge la disposition en grille (grille). Étant donné que la plupart de nos programmes sont affichés dans des rectangles, même les conceptions complexes deviennent plus simples à développer.


# 安装tkinter
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tkinter


下面使用Tkinter设计一个BMI计算器。


以重量和高度作为输入,并在弹出框中返回BMI系数作为输出。


from tkinter import *
from tkinter import messagebox

def get_height():
    # 获取身高数据(cm)
    height = float(ENTRY2.get())
    return height

def get_weight():
    # 获取体重数据(kg)
    weight = float(ENTRY1.get())
    return weight

def calculate_bmi():
    # 计算BMI系数
    try:
        height = get_height()
        weight = get_weight()
        height = height / 100.0
        bmi = weight / (height ** 2)
    except ZeroDivisionError:
        messagebox.showinfo("提示", "请输入有效的身高数据!!")
    except ValueError:
        messagebox.showinfo("提示", "请输入有效的数据!")
    else:
        messagebox.showinfo("你的BMI系数是: ", bmi)

if __name__ == '__main__':
    # 实例化object,建立窗口TOP
    TOP = Tk()
    TOP.bind("<Return>", calculate_bmi)
    # 设定窗口的大小(长 * 宽)
    TOP.geometry("400x400")
    # 窗口背景颜色
    TOP.configure(background="#8c52ff")
    # 窗口标题
    TOP.title("BMI 计算器")
    TOP.resizable(width=False, height=False)
    LABLE = Label(TOP, bg="#8c52ff", fg="#ffffff", text="欢迎使用 BMI 计算器", font=("Helvetica", 15, "bold"), pady=10)
    LABLE.place(x=55, y=0)
    LABLE1 = Label(TOP, bg="#ffffff", text="输入体重(单位:kg):", bd=6,
                   font=("Helvetica", 10, "bold"), pady=5)
    LABLE1.place(x=55, y=60)
    ENTRY1 = Entry(TOP, bd=8, width=10, font="Roboto 11")
    ENTRY1.place(x=240, y=60)
    LABLE2 = Label(TOP, bg="#ffffff", text="输入身高(单位:cm):", bd=6,
                   font=("Helvetica", 10, "bold"), pady=5)
    LABLE2.place(x=55, y=121)
    ENTRY2 = Entry(TOP, bd=8, width=10, font="Roboto 11")
    ENTRY2.place(x=240, y=121)
    BUTTON = Button(bg="#000000", fg=&#39;#ffffff&#39;, bd=12, text="BMI", padx=33, pady=10, command=calculate_bmi,
                    font=("Helvetica", 20, "bold"))
    BUTTON.grid(row=5, column=0, sticky=W)
    BUTTON.place(x=115, y=250)
    TOP.mainloop()


界面如下。


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !


Lorsqu'il n'y a pas de données, cliquez sur le bouton IMC et il y aura une invite correspondante.


Ci-dessous, nous utilisons les données correctes pour voir les résultats. Ça fait du bien de l'utiliser.


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !


03.


Kivy是另一个开源的Python库,最大的优点就是可以快速地编写移动应用程序(手机)。


Kivy可以在不同的平台上运行,包括Windows、Mac OS、Linux、Android、iOS和树莓派。


此外也是免费使用的,获得了MIT许可。


# 安装kivy
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple kivy


一个基于Kivy的Hello World窗口。


from kivy.app import App
from kivy.uix.button import Button

class TestApp(App):
    def build(self):
        return Button(text=" Hello Kivy World ")

TestApp().run()


结果如下。


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !



04. wxPython


wxPython是一个跨平台GUI的Python库,可轻松创建功能强大稳定的GUI,毕竟是用C++编写的~


目前,支持Windows,Mac OS X,macOS和Linux。


使用wxPython创建的应用程序(GUI)在所有平台上都具有原生外观。


# 安装wxPython
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple wxPython


下面使用wxPython创建一个基本的GUI示例。


import wx

myapp = wx.App()
init_frame = wx.Frame(parent=None, title=&#39;WxPython 窗口&#39;)

init_frame.Show()
myapp.MainLoop()


结果如下。


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !


Lien de documentation : https://www.wxpython.org/



05

.
PySimpleGUI aussi Framework GUI basé sur Python .

Une interface graphique personnalisée peut être facilement créée.

Adopte les quatre frameworks GUI les plus populaires QT, Tkinter, WxPython et Remi, qui peuvent implémenter la plupart des exemples de codes et
réduire la difficulté d'apprentissage

.

Remi将应用程序的界面转换为HTML,以便在Web浏览器中呈现。


# 安装PySimpleGUI
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PySimpleGUI


下面是一个简单的案例。


import PySimpleGUI as sg

layout = [[sg.Text("测试 PySimpleGUI")], [sg.Button("OK")]]
window = sg.Window("样例", layout)
while True:
    event, values = window.read()
    if event == "OK" or event == sg.WIN_CLOSED:
        break
window.close()


结果如下。


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !


Cliquez sur le bouton OK et la fenêtre disparaît.



06.


PyGUI est un
avec un simple API Le framework GUI bien connu réduit la quantité de code entre les applications Python et l'interface graphique sous-jacente de la plate-forme.

API légère, qui peut rendre votre application plus fluide et plus rapide.


En même temps, il propose également du code open source et des projets multiplateformes. Fonctionne actuellement sur les systèmes basés sur Unix, Windows et Mac OS.


Python2 et Python3 sont tous deux pris en charge.

Adresse du document :

https://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/

Lien du tutoriel :

https://realpython.com/pysimplegui-python/



07. Pyforms


Pyforms est un framework multiplateforme pour développer des applications GUI.


Sept bibliothèques GUI essentielles pour Python, vous devez les apprendre cette fois !


Pyforms est un framework de développement d'applications graphiques multi-environnements Python2.7/3.x. La modularisation et la réutilisation du code peuvent économiser beaucoup de travail.


Permet aux applications de s'exécuter sur ordinateur, Web et terminal sans modifier le code.


# 安装PyFroms
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyFroms


文档地址:https://pyforms.readthedocs.io/en/v4/


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Oguri Cap Build Guide | Un joli Musume Derby
3 Il y a quelques semaines By Jack chen
Guide de construction d'Agnes Tachyon | Un joli Musume Derby
3 Il y a quelques semaines By Jack chen
Guide de construction de Grass Wonder | Uma musume joli derby
2 Il y a quelques semaines By Jack chen
Pic comment émoter
1 Il y a quelques mois By Jack chen

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Une classe Python peut-elle avoir plusieurs constructeurs? Une classe Python peut-elle avoir plusieurs constructeurs? Jul 15, 2025 am 02:54 AM

Oui, apythonclasscanhavemultipleconstructorshroughalterativetechniques.1.UseaultArgumentsInthe__Init__MethodtoallowflexibleInitializationwithVaryingNumbersofParameters.2.DefineclassMethodsAnterveConstructorForCeleArandScalableableBjectCraturé

Python pour la gamme de boucle Python pour la gamme de boucle Jul 14, 2025 am 02:47 AM

Dans Python, l'utilisation d'une boucle pour la fonction avec la plage () est un moyen courant de contrôler le nombre de boucles. 1. Utilisez lorsque vous connaissez le nombre de boucles ou avez besoin d'accès aux éléments par index; 2. Plage (arrêt) de 0 à l'arrêt-1, plage (démarrage, arrêt) du début à l'arrêt-1, plage (démarrage, arrêt) ajoute la taille de l'étape; 3. Notez que la plage ne contient pas la valeur finale et renvoie des objets itérables au lieu de listes dans Python 3; 4. Vous pouvez vous convertir en liste via la liste (plage ()) et utiliser la taille de pas négative dans l'ordre inverse.

Accéder aux données à partir d'une API Web dans Python Accéder aux données à partir d'une API Web dans Python Jul 16, 2025 am 04:52 AM

La clé de l'utilisation de Python pour appeler WebAPI pour obtenir des données est de maîtriser les processus de base et les outils communs. 1. L'utilisation des demandes pour lancer des demandes HTTP est le moyen le plus direct. Utilisez la méthode GET pour obtenir la réponse et utilisez JSON () pour analyser les données; 2. Pour les API qui nécessitent une authentification, vous pouvez ajouter des jetons ou des clés via des en-têtes; 3. Vous devez vérifier le code d'état de réponse, il est recommandé d'utiliser Response.RAISE_FOR_STATUS () pour gérer automatiquement les exceptions; 4. Face à l'interface de pagination, vous pouvez demander différentes pages et ajouter des retards pour éviter les limitations de fréquence; 5. Lors du traitement des données JSON renvoyées, vous devez extraire des informations en fonction de la structure et les données complexes peuvent être converties en données

python une ligne si d'autre python une ligne si d'autre Jul 15, 2025 am 01:38 AM

Python's Onelineifelse est un opérateur ternaire, écrit comme XifConditionelSey, qui est utilisé pour simplifier le jugement conditionnel simple. Il peut être utilisé pour une affectation variable, tel que status = "adulte" ifage> = 18Else "mineur"; Il peut également être utilisé pour renvoyer directement les résultats dans des fonctions, telles que Deget_Status (âge): renvoyer "adulte" ifage> = 18else "mineur"; Bien que l'utilisation imbriquée soit prise en charge, comme le résultat = "A" i

Comment lire un fichier JSON dans Python? Comment lire un fichier JSON dans Python? Jul 14, 2025 am 02:42 AM

La lecture des fichiers JSON peut être implémentée dans Python via le module JSON. Les étapes spécifiques sont les suivantes: utilisez la fonction Open () pour ouvrir le fichier, utilisez json.load () pour charger le contenu, et les données seront renvoyées dans un formulaire de dictionnaire ou de liste; Si vous traitez les chaînes JSON, vous devez utiliser JSON.loads (). Les problèmes communs incluent les erreurs de chemin de fichier, le format JSON incorrect, les problèmes de codage et les différences de conversion du type de données. Faites attention à la précision du chemin, à la légalité du format, aux paramètres d'encodage et à la cartographie des valeurs booléennes et null.

Python pour Loop pour lire la file ligne par ligne Python pour Loop pour lire la file ligne par ligne Jul 14, 2025 am 02:47 AM

L'utilisation d'une boucle pour lire les fichiers ligne par ligne est un moyen efficace de traiter les fichiers volumineux. 1. L'utilisation de base consiste à ouvrir le fichier via Openn () et à gérer automatiquement la fermeture. Combiné avec ForLineInfile pour traverser chaque ligne. line.strip () peut supprimer les ruptures de ligne et les espaces; 2. Si vous avez besoin d'enregistrer le numéro de ligne, vous pouvez utiliser l'énumération (fichier, start = 1) pour permettre au numéro de ligne de démarrer à partir de 1; 3. Lors du traitement des fichiers non ASCII, vous devez spécifier des paramètres d'encodage tels que UTF-8 pour éviter les erreurs de codage. Ces méthodes sont concises et pratiques, et conviennent à la plupart des scénarios de traitement de texte.

chaîne de cas de cas Python Comparez si chaîne de cas de cas Python Comparez si Jul 14, 2025 am 02:53 AM

Le moyen le plus direct de faire des comparaisons de chaînes insensibles à des cas dans Python est d'utiliser .Lower () ou .upper () à comparer. Par exemple: str1.lower () == str2.lower () peut déterminer s'il est égal; Deuxièmement, pour le texte multilingue, il est recommandé d'utiliser une méthode Casefold () plus approfondie, telle que "Straß" .Casefold () sera converti en "strasse", tandis que .Lower () peut conserver des caractères spécifiques; De plus, il doit être évité d'utiliser directement == Comparaison directement, à moins que le cas ne soit confirmé comme cohérent, il est facile de provoquer des erreurs logiques; Enfin, lors du traitement de la saisie, de la base de données ou de la correspondance des utilisateurs

Comment utiliser la fonction de carte dans Python Comment utiliser la fonction de carte dans Python Jul 15, 2025 am 02:52 AM

La fonction MAP () de Python implémente une conversion de données efficace en agissant comme fonctions spécifiées sur chaque élément de l'objet itérable à son tour. 1. Son utilisation de base est la carte (fonction, itérable), qui renvoie un objet MAP "Loot Lazy", qui est souvent converti en List () pour afficher les résultats; 2. Il est souvent utilisé avec Lambda, qui convient à une logique simple, comme la conversion des chaînes en majuscules; 3. Il peut être transmis dans plusieurs objets itérables, à condition que le nombre de paramètres de fonction correspond, tels que le calcul du prix actualisé et de la remise; 4. Les techniques d'utilisation comprennent la combinaison de fonctions intégrées pour taper rapidement la conversion, la gestion des situations similaires à Zip () et d'éviter la nidification excessive pour affecter la lisibilité. Masterring Map () peut rendre le code plus concis et professionnel

See all articles