파 이 썬 에 꼭 필요 한 GUI 라 이브 러 리 7 개

8920 단어 python창고.gui
GUI(그래 픽 사용자 인터페이스)는 말 그대로 그래 픽 방식 으로 컴퓨터 가 조작 하 는 인 터 페 이 스 를 표시 하여 더욱 편리 하고 직관 적 이다.
이에 대응 하 는 것 은 CUI(명령 행 사용자 상호작용)이다.흔히 볼 수 있 는 Dos 명령 행 조작 이 므 로 자주 사용 하 는 명령 을 기억 해 야 한다.일반인 에 게 조작 하면 학습 난이도 가 매우 높다.
보기 좋 고 쓰기 좋 은 GUI 는 여러분 의 사용 체험 을 크게 향상 시 키 고 효율 을 높 일 수 있 습 니 다.
예 를 들 어 계산 기 를 개발 하고 싶 습 니 다.프로그램 입력,출력 창 만 있 으 면 사용자 체험 이 없습니다.
그래서 이미지 화 된 작은 창 을 개발 하 는 것 이 필요 하 다.
오늘 은 파 이 썬 에 꼭 필요 한 GUI 라 이브 러 리 7 개 를 소개 합 니 다.하나하나 배 울 만 한 가치 가 있 습 니 다.
01. PyQt5
PyQt 5 는 리 버 뱅 크 컴 퓨 팅 이 개발 했다.Qt 프레임 워 크 를 바탕 으로 구축 되 고 크로스 플랫폼 프레임 워 크 로 각종 플랫폼 에 응용 프로그램 을 만 들 수 있 습 니 다.이 는 유 닉 스,Windows,Mac OS 를 포함 합 니 다.
PyQt 는 Qt 와 Python 을 결합 합 니 다.그것 은 단지 GUI 공구 꾸러미 가 아니다.스 레 드,유 니 코드,정규 표현 식,SQL 데이터베이스,SVG,OpenGL,XML 과 기능 이 완 선 된 웹 브 라 우 저,그리고 다양한 GUI 위 젯 집합 도 포함 되 어 있다.
pip 로 설치 해 주세요.

#   PyQt5
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5
설치 에 성공 하면 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_())
결 과 는 다음 과 같다.

문서 주소:
https://riverbankcomputing.com/software/pyqt/intro
튜 토리 얼 링크:
https://www.guru99.com/pyqt-tutorial.html  
02. Tkinter 
Tkinter 는 Python 에서 가장 인기 있 는 GUI 라 이브 러 리 중 하나 입 니 다.간단 하고 배우 기 쉬 운 문법 때문에 GUI 개발 초보 자의 첫 번 째 선택 중 하나 가 되 었 다.
Tkinter 는 태그,단추,텍스트 필드,체크 상자,스크롤 단추 등 다양한 위 젯 을 제공 합 니 다.
Grid(격자)레이아웃 을 지원 합 니 다.프로그램 대부분이 사각형 으로 표시 되 기 때문에 복잡 한 디자인 이라도 개발 이 간단 해 집 니 다. 

#   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='#ffffff', 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()
화면 은 아래 와 같다.

데이터 가 없 을 때 BMI 버튼 을 누 르 면 이에 대응 하 는 알림 이 있 습 니 다.
다음은 정확 한 데 이 터 를 사용 하여 결 과 를 보 겠 습 니 다.

사용 해 보 니 괜 찮 은 것 같 아 요.
03. Kivy
키 비 는 또 다른 오픈 소스 파 이 썬 라 이브 러 리 로,가장 큰 장점 은 모 바 일 애플 리 케 이 션(모 바 일)을 빠르게 작성 할 수 있다 는 것 이다.
키 비 는 윈도,맥 OS,리 눅 스,안 드 로 이 드,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()
결 과 는 다음 과 같다.

04. wxPython
wxPython 은 크로스 플랫폼 GUI 의 Python 라 이브 러 리 로 강력 하고 안정 적 인 기능 을 가 진 GUI 를 쉽게 만 들 수 있 습 니 다.C++로 작 성 된 것 이기 때 문 입 니 다~
현재 윈도,맥 OS X,맥 OS,리 눅 스 를 지원 합 니 다.
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='WxPython   ')

init_frame.Show()
myapp.MainLoop()
결 과 는 다음 과 같다.

문서 링크:https://www.wxpython.org/
05. PySimpleGUI
PySimple GUI 도 Python 기반 GUI 프레임 워 크 입 니 다.사용자 정의 GUI 를 손 쉽게 만 들 수 있다.
가장 유행 하 는 GUI 프레임 워 크 QT,Tkinter,WxPython,Remi 네 가 지 를 적용 해 대부분의 샘플 코드 를 구현 할 수 있어 학습 난이 도 를 낮 췄 다.
Remi 는 웹 브 라 우 저 에 표시 할 수 있 도록 프로그램의 인 터 페 이 스 를 HTML 로 변환 합 니 다.

#   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()
결 과 는 다음 과 같다.

OK 버튼 을 누 르 면 창 이 사라 집 니 다.
06. PyGUI
PyGUI 는 간단 한 API 로 유명한 GUI 프레임 워 크 로 Python 애플 리 케 이 션 과 플랫폼 바 텀 GUI 간 의 코드 양 을 줄인다.
경량급 API 는 프로그램 을 더욱 원활 하고 빠르게 실행 할 수 있 습 니 다.
또한 소스 코드,크로스 플랫폼 프로젝트 도 오픈 합 니 다.현재 유 닉 스 기반 시스템,윈도,맥 OS 에서 실행 할 수 있 습 니 다.
Python 2 와 Python 3 는 모두 지원 할 수 있 습 니 다.
문서 주소:
https://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/
튜 토리 얼 링크:
https://realpython.com/pysimplegui-python/
07. Pyforms
Pyforms 는 GUI 애플 리 케 이 션 개발 을 위 한 크로스 플랫폼 프레임 워 크 입 니 다.

pyforms 는 Python 2.7/3.x 크로스 환경 그래 픽 응용 개발 프레임 워 크 로 모듈 화 와 코드 재 활용 은 많은 작업 을 절약 할 수 있 습 니 다.
코드 를 수정 하지 않 아 도 데스크 톱,웹,터미널 에서 프로그램 이 실 행 될 수 있 도록 합 니 다.

#   PyFroms
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyFroms
문서 주소:https://pyforms.readthedocs.io/en/v4/
항목 주소:
링크:https://pan.baidu.com/s/1bSeDjNGWEia7xw5c1zpsYg  비밀번호:aw5m
이상 은 7 개의 Python 에 필요 한 GUI 라 이브 러 리 의 상세 한 내용 입 니 다.python gui 라 이브 러 리 에 관 한 자 료 는 다른 관련 글 을 주목 하 세 요!

좋은 웹페이지 즐겨찾기