티스토리 뷰
import random
from colorama import init, Fore, Back, Style
init()
# 파일 읽기
file_path = 'C:\\Users\\USER\\Dropbox\\vscode project\\python sia quiz\\사자성어 퀴즈\\사자성어.txt'
with open(file_path, 'r', encoding='utf-8') as file:
lines = file.readlines()
# 사자성어와 설명을 분리하여 저장
proverbs = {}
for line in lines:
parts = line.strip().split(':')
if len(parts) == 2:
proverbs[parts[0].strip()] = parts[1].strip()
# 랜덤으로 사자성어 선택 및 퀴즈 생성
def create_quiz(proverbs, num_choices=5):
correct_answer = random.choice(list(proverbs.keys()))
choices = random.sample(list(proverbs.keys()), num_choices - 1)
if correct_answer not in choices:
choices.append(correct_answer)
random.shuffle(choices)
return proverbs[correct_answer], choices, correct_answer
# 퀴즈 생성 및 사용자에게 제시
score = 0
correct = True
print("[사자성어 퀴즈]")
while ( correct):
description, choices, correct_answer = create_quiz(proverbs)
# 사용자에게 문제 제시
print(f"\n설명: {description}")
print("보기:")
for i, choice in enumerate(choices, 1):
print(f"{i}. {choice}")
# 사용자 입력 받기 (이 환경에서는 실제 입력을 받을 수 없으므로 주석 처리)
user_answer = input(Fore.YELLOW + "정답 번호를 입력하세요: ")
print(Style.RESET_ALL, end="")
# 정답 확인 (이 환경에서는 실제 입력을 받을 수 없으므로 예시 값 사용)
correct = choices[int(user_answer) - 1] == correct_answer
print(Fore.GREEN + "정답입니다!" if correct else Fore.GREEN + f"오답입니다. 정답은 {correct_answer}입니다.")
print(Style.RESET_ALL, end="")
if(correct):
score += 1
print(f"최종 스코어는 {score}점 입니다.")
# 데이터 셋
街談巷說(가담항설) : 거리나 마을에 떠도는 이야기나 말. 패관문학의 재료가 됨.
苛斂誅求(가렴주구) : 세금을 혹독하게 징수하고 물건을 강제로 요구함.
假弄成眞(가롱성진) : 거짓된 것을 참된 것처럼 보이게 하는 것으로 장난삼아 한 일이 진짜가 됨.
佳人薄命(가인박명) : 아름다운 여인은 운명이 박함을 이르는 말.
家藏什物(가장집물) : 집에 두는 여러 가지 물건이나 가구. 장롱이나 문갑 등.
刻鵠類鶩(각곡유목) : 높은 뜻을 가지고 어떤 일을 이루려다 중도에 그만두어 다른 사람의 비웃음을 받게 됨.
刻骨難忘(각골난망) : 입은 은혜에 대한 고마운 마음이 깊이 뼈에 사무쳐 잊혀지지 않음.
各樣各色(각양각색) : 여러 가지 모양과 빛깔. 제각기 다양한 모습들.
사자성어 퀴즈:
설명: 한 가지를 들으면 열을 미루어 앎. 공자가 자공에게 안회와 자공 중 누가 더 낫다고 생각하느냐는 물음에 자공이 "안회는 하나를 들으면 열을 알고 자기는 하나를 들으면 겨우 둘 안다."라고 대답한 것에서 유래.
보기:
1. 巫山之夢(무산지몽)
2. 傍若無人(방약무인)
3. 聞一知十(문일지십)
4. 同病相憐(동병상련)
5. 亡羊之歎(망양지탄)
정답 번호를 입력하세요: 3
정답입니다!
사자성어 퀴즈:
설명: 천 년에 한 번 만남. 곧, 좀처럼 만나기 어려운 좋은 기회.
보기:
1. 刎頸之交(문경지교)
2. 千載一遇(천재일우)
3. 麻中之蓬(마중지봉)
4. 居安思危(거안사위)
5. 綠衣紅裳(녹의홍상)
정답 번호를 입력하세요: 2
정답입니다!
사자성어 퀴즈:
설명: 갈라진 길에서 양을 잃고 탄식했다는 고사에서 유래. 학문의 길도 여러 갈래라 길을 바로잡기 어렵다는 뜻.
보기:
1. 錦衣夜行(금의야행)
2. 去頭截尾(거두절미)
3. 敎學相長(교학상장)
4. 亡羊之歎(망양지탄)
5. 同病相憐(동병상련)
정답 번호를 입력하세요: 4
정답입니다!
사자성어 퀴즈:
설명: 미리 준비하여 두지 않고 일이 닥쳐서야 허둥지둥 덤벼 댐.
보기:
1. 南柯一夢(남가일몽)
2. 膠柱鼓瑟(교주고슬)
3. 弄璋之慶(농장지경)
4. 誇大妄想(과대망상)
5. 渴而穿井(갈이천정)
정답 번호를 입력하세요: 2
오답입니다. 정답은 渴而穿井(갈이천정)입니다.
최종 스코어는 3점 입니다.
728x90
반응형
'키즈 노트' 카테고리의 다른 글
키즈노트 #7 사자성어 퀴즈 전체 스코어, 최고 점수 기록 (0) | 2024.06.27 |
---|---|
키즈노트 #6 사자성어 퀴즈 + 네이버 사전 힌트 (0) | 2023.11.28 |
키즈노트 #4 10진법 to 2진법 계산 (1) | 2023.11.26 |
키즈노트 #3 날짜 사이 계산하기 (2) | 2023.11.26 |
키즈노트 #2 2진법 to 10진법 계산 (1) | 2023.11.22 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- grep
- nc
- 압축파일
- ssh
- tar
- 32bit
- X32
- OpenSSL
- BASE64
- HTTPS
- 웹보안공부
- natas7
- Encode
- 풀이
- Linux
- SSL
- find
- 리터럴
- over the wire
- Strings
- OverTheWire
- 리눅스
- Bandit
- solution
- bz2
- Natas
- tr
- 웹보안
- gz
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함