반응형
반응형

[python] chatGPT가 만들어준 tkinter 이용한 영화추천 프로그램 

 

질문 : python gui program make a recomendation

 

 

import tkinter as tk
from tkinter import messagebox

# Sample movie data
movies = {
    "Action": ["Die Hard", "Mad Max: Fury Road", "The Dark Knight"],
    "Comedy": ["The Hangover", "Superbad", "Anchorman"],
    "Drama": ["The Shawshank Redemption", "Forrest Gump", "The Godfather"]
}

def get_recommendation():
    selected_genre = genre_var.get()
    
    if selected_genre:
        recommendations = movies.get(selected_genre, [])
        
        if recommendations:
            recommended_movies.set("\n".join(recommendations))
        else:
            recommended_movies.set("No recommendations available for this genre.")
    else:
        messagebox.showinfo("Error", "Please select a genre.")

# Create the main GUI window
root = tk.Tk()
root.title("Movie Recommendation")

# Create and place widgets
genre_label = tk.Label(root, text="Select a genre:")
genre_label.pack()

genre_var = tk.StringVar()
genre_dropdown = tk.OptionMenu(root, genre_var, *movies.keys())
genre_dropdown.pack()

recommend_button = tk.Button(root, text="Get Recommendation", command=get_recommendation)
recommend_button.pack()

recommended_movies = tk.StringVar()
recommended_movies_label = tk.Label(root, textvariable=recommended_movies)
recommended_movies_label.pack()

root.mainloop()
반응형
반응형

PyQt5에 대해  https://doc.qt.io/

 



  • PyQt5는 Qt5 어플리케이션 프레임워크에 대한 파이썬 버전입니다. Qt는 플랫폼에 관계없이 다양한 기능을 포함하는 C++ 라이브러리이자 개발툴입니다.
  • PyQt5는 이러한 1000여 개의 클래스들을 포함하는 파이썬 모듈의 모음입니다.
  • PyQt5는 윈도우, 리눅스, macOS, 안드로이드, iOS를 지원합니다.
  • PyQt5의 홈페이지(https://www.riverbankcomputing.com/software/pyqt/intro)에서 최신의 그리고 안정적인 버전의 PyQt5와 최신 버전의 문서를 얻을 수 있습니다.
  • PyQt5 개발자는 GPL과 상업용 라이센스 중 하나를 선택할 수 있습니다.
    (PyQt5 라이센스 관련: https://www.riverbankcomputing.com/commercial/license-faq)
반응형
반응형

[python] 파이썬으로 만드는 나만의 GUI 프로그램https://wikidocs.net/book/2165

 

PyQt5 Tutorial - 파이썬으로 만드는 나만의 GUI 프로그램

## 소개 - 한국어로 되어있는 PyQt5 자료가 많지 않아서 아래의 여러 튜토리얼과 강의의 예제를 정리하며 시작했습니다. - **PyQt5의 설치**부터 시작해서, **…

wikidocs.net

 

순서

01. 소개 (Introduction) - Python과 PyQt5에 대해 간략하게 설명합니다.





02. 설치 (Installation) - 개발 환경 구성을 위해 파이참과 아나콘다를 설치합니다.




03. 기초 (Basics) - GUI 프로그램의 기본 기능에 대해 알아봅니다.




04. 레이아웃 (Layout) - 구성 요소를 배치하는 방법에 대해 알아봅니다.




05. 위젯 (Widget) - 유용하게 사용할 수 있는 다양한 위젯들을 알아봅니다.




06. 다이얼로그 (Dialog) - 사용자가 프로그램과 상호작용하는 방식에 대해 알아봅니다.




07. 시그널과 슬롯 (Signal & Slot) - PyQt5에서의 이벤트 처리에 대해 알아봅니다.




08. 그림 그리기 (Painting) - PyQt5의 다양한 그림 그리기 기능을 활용합니다.




09. 실행파일 만들기 (PyInstaller) - 작성한 프로그램을 실행파일로 만들어봅니다.







참고한 튜토리얼과 강의

  1. PyQt5 공식 문서 (http://pyqt.sourceforge.net/Docs/PyQt5/)
  2. pythonspot (https://pythonspot.com/gui/)
  3. zetcode (http://zetcode.com/gui/pyqt5/)
  4. opentutorials.org (https://opentutorials.org/module/544)
  5. tutorialspoint (https://www.tutorialspoint.com/pyqt/)
  6. udemy 강의1: Python Desktop Application Development with PyQt
  7. udemy 강의2: Create Simple GUI Applications with Python and Qt
반응형
반응형

PyInstaller Manual  https://pyinstaller.org/en/stable/#

 

PyInstaller Manual — PyInstaller 5.13.0 documentation

PyInstaller bundles a Python application and all its dependencies into a single package. The user can run the packaged app without installing a Python interpreter or any modules. PyInstaller supports Python 3.7 and newer, and correctly bundles many major P

pyinstaller.org

 

https://wikidocs.net/21952#_1

 

09. 실행파일 만들기 (PyInstaller)

![](https://wikidocs.net/images/page/21952/intro_exe.png)   제작한 Python 파일(.py)을 실행파일(.exe)로.…

wikidocs.net

PyInstaller는 Python 애플리케이션과 모든 종속성을 단일 패키지로 묶습니다. 

사용자는 Python 인터프리터 또는 모듈을 설치하지 않고 패키지된 앱을 실행할 수 있습니다. 

PyInstaller는 Python 3.7 이상을 지원하며 numpy, matplotlib, PyQt, wxPython 등과 같은 많은 주요 Python 패키지를 올바르게 번들로 제공합니다.

 

PyInstaller는 Windows, MacOS X 및 Linux에 대해 테스트되었습니다. 

그러나 크로스 컴파일러는 아닙니다. 

 

Windows 앱을 만들려면 Windows에서 PyInstaller를 실행하고 Linux 앱을 만들려면 Linux 등에서 실행합니다.

x PyInstaller는 AIX, Solaris, FreeBSD 및 OpenBSD에서 성공적으로 사용되었지만 이들에 대한 테스트는 지속적인 통합의 일부가 아닙니다.

 

개발 팀은 PyInstaller가 이러한 플랫폼에서 작동하거나 계속 지원될 것이라는 보장을 제공하지 않습니다(이러한 플랫폼에 대한 모든 코드는 외부 기여에서 제공됨).

요구 사항이 설치되어 있는지 확인한 다음 PyPI에서 PyInstaller를 설치합니다.

pip install -U pyinstaller

명령 프롬프트/셸 창을 열고 .py 파일이 있는 디렉터리로 이동한 후 다음 명령을 사용하여 앱을 빌드합니다.

pyinstaller your_program.py

 

요구 사항

윈도우

PyInstaller는 Windows 8 이상에서 실행됩니다. 그래픽 창 앱(명령 창이 필요하지 않은 앱)을 만들 수 있습니다.

맥 OS

PyInstaller는 macOS 10.15(Catalina) 이상에서 실행됩니다. 그래픽 창 앱(터미널 창을 사용하지 않는 앱)을 빌드할 수 있습니다. PyInstaller는 실행하는 macOS 릴리스 및 후속 릴리스와 호환되는 앱을 빌드합니다. 두 아키텍처 중 하나의 macOS 시스템에서 또는 하이브리드 범용 2 바이너리를 x86_64빌드 arm64  있습니다 . 자세한 내용은 macOS 다중 아키텍처 지원을 참조하세요 .

반응형
반응형

이 책은 Qt Designer와 PyQt5를 이용하여 보다 쉽게 Python GUI 프로그래밍을 배워보는 책입니다. Python의 기본 문법을 익힌 상태에서 이 책을 공부하시는 것을 추천드립니다. 이 책에 있는 모든 코드들은 위의 링크에서 다운로드 받으실 수 있습니다.


본 책은 아래의 환경에서 작성되었습니다.

Mac OS Mojave(언어 - 영어) - Macbook Pro 13' late 2016(Four Thunderbolt 3 Ports)

본 책의 예제코드는 아래의 환경에서 테스트되었습니다.

  • Windows 10(언어 - 한글) - i7-7700K, RAM 16G, GTX1060
  • Mac OS Mojave(언어 - 영어) - Macbook Pro 13' late 2016(Four Thunderbolt 3 Ports)

이 책은 초보자를 위해 간단한 Qt의 기능만을 소개하고 있습니다.
위젯들의 자세한 메뉴얼과 함수는 아래 링크에 있는 Qt의 공식 홈페이지를 참조해주시기 바랍니다.

Qt for Python Documentation
Qt Designer Manual

반응형
반응형

메뉴얼과 함수는 아래 링크에 있는 Qt의 공식 홈페이지를 참조해주시기 바랍니다.

 

Qt for Python Documentation  https://doc.qt.io/qtforpython/index.html
Qt Designer Manual  https://doc.qt.io/qt-5/qtdesigner-manual.html

Qt for Python Documentation
Qt Designer Manual

 

Qt Style Sheets Reference

https://doc.qt.io/qt-5/stylesheet-reference.html

 

Qt Style Sheets Reference | Qt Widgets 5.15.14

 

doc.qt.io

Qt Style Sheets support various properties, pseudo-states, and subcontrols that make it possible to customize the look of widgets.

반응형

+ Recent posts