본문 바로가기
IT 컴퓨터 인터넷

[파이썬 해보기]-파이썬으로 PyQt5 구구단 만들기: 설치부터 오류 해결까지 완벽 가이드!

by myvv77 2025. 2. 23.
반응형

오늘은 chat GPT를 이용해서 프로그램을 만들어 보겠습니다.
 
python을 이용해서 만든 프로그램을 실행해 보겠습니다.
 
우선 python 프로그램을 설치해야겠죠?
 

 
① Python 다운로드
Python 공식 웹사이트에 접속하여 최신 버전을 다운로드합니다.
 
Windows 사용자는 .exe 파일을, macOS 사용자는 .pkg 파일을 선택하세요.
 

 
 

다운로드한 파이썬 설치 파일
 
② 설치 시 주의사항
"Add python.exe to PATH" 옵션을 반드시 체크하세요. 이 옵션을 선택하지 않으면 명령 프롬프트에서 Python을 실행할 때 오류가 발생할 수 있습니다.
 
기본 설정 그대로 설치하거나, 원하는 경로를 지정해 설치를 완료하세요.
 
③ 설치 확인

설치가 완료되면 터미널(또는 명령 프롬프트)에서 다음 명령어를 입력해 Python이 정상적으로 설치되었는지 확인합니다.
 

명령 프롬프트를 검색해서 실행

 

 

파이썬 설치 확인


그리고 이제 코드를 작성하고 편집할 수 있는 Visual Studio Code(VSCode) 설치 및 활용에 대해
알려드리겠습니다.
 
① VSCode 다운로드 및 설치
VSCode 공식 웹사이트에서 운영 체제에 맞는 버전을 다운로드하세요.
 
설치 후 Python 확장팩을 추가하면 Python 개발 환경이 완벽히 구축됩니다.
 

사용하고 있는 운영체제를 찾아서 다운로드를 받습니다.

 
② VSCode가 좋은 이유
자동 들여 쓰기: Python은 들여 쓰기가 중요합니다. VSCode는 자동 들여 쓰기를 지원해 코드 오류를 줄여줍니다.
 
코드 하이라이트: 가독성을 높여주는 색상 구분.
 
디버깅 기능: 코드 실행 중 오류를 쉽게 찾을 수 있습니다.
 
이렇게 하면 파이썬으로 코딩할 준비가 끝이 났습니다.


하지만 어떤 코드를 써야 하는지 모릅니다. 그래서 쳇 GPT에서 코드를 물어봅니다. 
 

 

로그인 또는 회원 가입을 하고 사용해도 되고 그냥 사용해 보기를 눌러서 사용해도 됩니다.

 

 

오늘 만들 프로그램은 프로그래밍 언어 책이나 공부할 때 제일 먼저 나오는 구구단입니다.
그래서 질문을 “python으로 숫자를 입력하면 1부터 9까지 곱한 숫자를 나열하는 구구단을 pyqt5를 이용해서 만들어줘”
이렇게 합니다.

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLineEdit, QPushButton, QLabel
 
class GugudanApp(QWidget):
    def __init__(self):
        super().__init__()
        
        self.setWindowTitle("구구단")
        self.setGeometry(300, 300, 300, 200)
        
        # 레이아웃 설정
        layout = QVBoxLayout()
        
        # 숫자 입력창
        self.number_input = QLineEdit(self)
        self.number_input.setPlaceholderText("구구단을 알고 싶은 숫자를 입력하세요")
        layout.addWidget(self.number_input)
        
        # 구구단 출력 라벨
        self.result_label = QLabel(self)
        layout.addWidget(self.result_label)
        
        # 구구단 계산 버튼
        self.calculate_button = QPushButton("구구단 출력", self)
        self.calculate_button.clicked.connect(self.calculate_gugudan)
        layout.addWidget(self.calculate_button)
        
        self.setLayout(layout)
    
    def calculate_gugudan(self):
        # 숫자 입력받기
        try:
            num = int(self.number_input.text())
            if 1 <= num <= 9:
                # 구구단 계산
                result = ""
                for i in range(1, 10):
                    result += f"{num} x {i} = {num * i}\n"
                self.result_label.setText(result)
            else:
                self.result_label.setText("1부터 9까지의 숫자를 입력해 주세요.")
        except ValueError:
            self.result_label.setText("유효한 숫자를 입력해 주세요.")
 
if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = GugudanApp()
    window.show()
    sys.exit(app.exec_())

 
그럼 쳇 GPT가 코드를 생성해 줍니다.
 
이제 이것을 그대로 복사해서 VScode프로그램에 붙여 넣기 한 후 .py파일로 저장을 해줍니다.
 

 

99.py로 저장

 

이제 터미널(또는 명령 프롬프트)에서 명령어를 입력합니다.
 

python .py파일

 

python입력 후 한 칸 띄우고 파이썬 파일을 드래그해서 명령 프롬프트에 넣으면 자동으로 경로까지 들어가면서 실행할 수 있게 됩니다.

 

그런데 실행이 안되고 오류가 생깁니다.
 

 

PyQt5가 설치가 안 되어 있기 때문에 오류가 생깁니다.
 
PyQt5란 무엇인가?
PyQt5는 Python으로 GUI(그래픽 사용자 인터페이스)를 개발할 수 있게 해주는 강력한 라이브러리입니다. Qt 프레임워크를 기반으로 하며, 버튼, 창, 메뉴 등 다양한 UI 요소를 쉽게 구현할 수 있습니다.
 
PyQt5의 주요 특징
사용자 친화적: 복잡한 GUI를 간단한 코드로 구현 가능.
 
다양한 기능: 창, 버튼, 텍스트 박스 등 다양한 위젯 제공.

 

크로스 플랫폼: Windows, macOS, Linux에서 모두 사용 가능.
 
PyQt5 설치 방법은 
 
터미널(또는 명령 프롬프트)에서 다음 명령어를 실행하세요.
 

pip install pyqt5

 
 

 
설치 완료 후 다시 파이썬 파일을 실행합니다. 

결과 화면


 
이제 이 프로그램에서 추가하고 싶은 것이나 수정하고 싶은 것을 쳇 GPT에게 추가로 질문을 합니다.
 

 
 
이렇게 질문을 하면 쳇 GPT는 수정된 코드를 알려 줍니다.
 

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLineEdit, QPushButton, QLabel
 
class GugudanApp(QWidget):
    def __init__(self):
        super().__init__()
        
        self.setWindowTitle("구구단")
        self.setGeometry(300, 300, 300, 200)
        
        # 레이아웃 설정
        layout = QVBoxLayout()
        
        # 숫자 입력창
        self.number_input = QLineEdit(self)
        self.number_input.setPlaceholderText("구구단을 알고 싶은 숫자를 입력하세요")
        layout.addWidget(self.number_input)
        
        # 구구단 출력 라벨
        self.result_label = QLabel(self)
        layout.addWidget(self.result_label)
        
        # 구구단 계산 버튼
        self.calculate_button = QPushButton("구구단 출력", self)
        self.calculate_button.setStyleSheet("background-color: orange; color: white; font-weight: bold;") # 버튼 색상 주황색으로 설정
        self.calculate_button.clicked.connect(self.calculate_gugudan)
        layout.addWidget(self.calculate_button)
        
        self.setLayout(layout)
    
    def calculate_gugudan(self):
        # 숫자 입력받기
        try:
            num = int(self.number_input.text())
            if 1 <= num <= 9:
                # 구구단 계산
                result = ""
                for i in range(1, 10):
                    result += f"{num} x {i} = {num * i}\n"
                self.result_label.setText(result)
            else:
                self.result_label.setText("1부터 9까지의 숫자를 입력해 주세요.")
        except ValueError:
            self.result_label.setText("유효한 숫자를 입력해 주세요.")
 
if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = GugudanApp()
    window.show()
    sys.exit(app.exec_())

 
다시 수정된 파일로 저장을 하고 실행을 합니다.
 

수정된 결과 화면

 
Python과 PyQt5는 GUI 프로그램 개발에 있어 강력하면서도 간단한 도구입니다. VSCode와 같은 편리한 코드 편집기를 활용하면 들여 쓰기 문제도 쉽게 해결할 수 있어 초보자에게도 적합합니다.
 
지금 바로 시작해 보세요!! 여러분만의 멋진 구구단 프로그램이 완성될 겁니다.

반응형