728x90
반응형
이 코드는 tkinter 모듈을 이용해 간단한 문장 암기 프로그램을 만드는 코드입니다.
우선 문장 리스트 sentences와 현재 문장 인덱스 current_sentence를 정의합니다.
check_answer 함수는 엔트리에 입력된 값과 현재 문장을 비교하여 정답 여부를 판단합니다. 정답일 경우 label_result 레이블에 "Correct!"를 출력하고, 1초 뒤 next_sentence 함수를 호출하여 다음 문장을 출력합니다. 오답일 경우 label_result 레이블에 "Wrong!"를 출력하고 입력받는 엔트리를 초기화합니다.
next_sentence 함수는 현재 문장 인덱스를 증가시킨 후 마지막 문장이 아니면 다음 문장을 출력합니다. 마지막 문장이면 윈도우를 종료합니다.
root 변수로 tkinter 윈도우를 생성합니다. label_sentence 레이블에 현재 문장을 출력하고, entry에 입력을 받습니다. button_check 버튼을 클릭하면 check_answer 함수가 실행되고, label_result 레이블에 정답 여부를 출력합니다.
마지막으로 mainloop 함수를 호출하여 tkinter 윈도우가 활성화되도록 합니다.
from tkinter import *
# 문장 리스트
sentences = ["This is sentence 1.", "This is sentence 2.", "This is sentence 3."]
# 현재 문장 인덱스
current_sentence = 0
# 정답 확인 함수
def check_answer():
global current_sentence
# 입력한 값과 현재 문장을 비교
if entry.get() == sentences[current_sentence]:
label_result.config(text="Correct!")
# 1초 뒤 다음 문장 출력
root.after(1000, next_sentence)
else:
label_result.config(text="Wrong!")
entry.delete(0, END)
# 다음 문장 출력 함수
def next_sentence():
global current_sentence
current_sentence += 1
# 마지막 문장이 아니면 다음 문장 출력
if current_sentence < len(sentences):
label_sentence.config(text=sentences[current_sentence])
entry.delete(0, END)
# 마지막 문장이면 종료
else:
root.destroy()
# tkinter 윈도우 생성
root = Tk()
# 문장 출력 레이블
label_sentence = Label(root, text=sentences[current_sentence], font=("Arial", 20))
label_sentence.pack()
# 입력받는 엔트리
entry = Entry(root, font=("Arial", 20))
entry.pack()
# 정답 확인 버튼
button_check = Button(root, text="Check", command=check_answer, font=("Arial", 20))
button_check.pack()
# 정답 결과 레이블
label_result = Label(root, font=("Arial", 20))
label_result.pack()
root.mainloop()
출력물
결과가 맞으면 Correct
결과가 틀리면 Incorrect. Try again.
728x90
반응형
'프로그래밍 > 파이썬' 카테고리의 다른 글
클래스놈 파이썬 문제 풀이 (0) | 2023.03.31 |
---|---|
큰 수일수록 순위가 높아지는데 list[1]의 값 비교 후 동점이면 list[2]의 값 비교, list[2]의 값도 동점이면 list[3]의 값을 비교하여 순위를 매기는 코드를 만드는 방법 (0) | 2023.03.31 |
turtle 모듈 사용하여 빨간색 별, 파란색 별 각각 그리는 파이썬 코드 (0) | 2023.03.30 |
파이썬 리스트 사용해서 최고점, 최저점, 평균값 구하는 코드 작성하기 (0) | 2023.03.30 |
직각삼각형, 역삼각형, 마름모를 파이썬으로 구현해보자. (0) | 2023.03.29 |
댓글