Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python Tkinter와 PyDictionary로 만드는 GUI 단어 사전 애플리케이션

이 글에서는 PyDictionary 모듈과 Tkinter를 활용해 GUI 기반의 단어 사전 애플리케이션을 만드는 방법을 소개합니다.

PyDictionary란?

PyDictionary는 단어의 뜻, 번역, 동의어, 반의어를 손쉽게 조회할 수 있도록 도와주는 파이썬 모듈입니다. 내부적으로는 다음과 같은 리소스를 활용합니다.

  • WordNet: 단어의 의미(뜻) 조회
  • Google Translate: 단어 번역
  • Synonym.com: 동의어 및 반의어 조회

또한 PyDictionary는 웹 데이터를 가져오기 위해 BeautifulSoupRequests 모듈을 의존성으로 사용합니다.

필요한 모듈 설치하기

애플리케이션을 만들기 전에, 먼저 터미널에서 pip 명령어로 필요한 모듈을 설치합니다.

pip install PyDictionary

설치가 완료되면 Tkinter 프레임과 각종 UI 요소들을 구성하여 사전 앱을 만들 수 있습니다.

전체 예제 코드

# 필요한 라이브러리 임포트
from tkinter import *
from PyDictionary import PyDictionary

# 인스턴스 및 객체 생성
dictionary = PyDictionary()
win = Tk()

# 창 크기 설정
win.geometry("700x400")
win.title("Python Dictionary")

# PyDictionary 클래스의 속성을 활용하는 헬퍼 함수 정의
def dict():
    meaning.config(text=dictionary.meaning(word.get())['Noun'][0])

# 레이블 및 버튼 구성
Label(win, text="Dictionary", font=("Times New Roman", 20)).pack(pady=20)

# 프레임 1: 단어 입력 영역
frame = Frame(win)
Label(frame, text="단어를 입력하세요 ", font=("Poppins bold", 15)).pack(side=LEFT)
word = Entry(frame, font=("Times New Roman", 15))
word.pack()
frame.pack(pady=10)

# 프레임 2: 뜻 표시 영역
frame1 = Frame(win)
Label(frame1, text="뜻:", font=("Arial", 18)).pack(side=LEFT)
meaning = Label(frame1, text="", font=("Poppins", 15), width=30)
meaning.pack()
frame1.pack(pady=10)

Button(win, text="찾기", font=("Poppins bold", 15), command=dict).pack()

# Tkinter 실행
win.mainloop()

실행 결과

위 코드를 실행하면 사전 애플리케이션이 생성되고 화면에 표시됩니다. 입력창에 원하는 단어를 적고 “찾기” 버튼을 클릭하면 해당 단어의 뜻이 아래 영역에 나타납니다.

예를 들어 입력창에 “Hello”라고 입력하고 버튼을 누르면, 사전에서 “Hello”의 의미를 가져와 화면에 출력합니다.

또한 PyDictionary가 제공하는 다양한 메서드를 활용하면 이 앱을 확장할 수 있습니다. 대표적인 기능은 다음과 같습니다.

  • dictionary.synonym("단어"): 동의어 조회
  • dictionary.antonym("단어"): 반의어 조회
  • dictionary.translate("단어", 'ko'): 특정 언어로 번역

이처럼 Tkinter의 위젯과 PyDictionary의 기능을 조합하면, 단순한 뜻 검색을 넘어 동의어·반의어·번역까지 지원하는 실용적인 사전 애플리케이션을 쉽게 완성할 수 있습니다.