728x90
반응형
import random
dict = {1:{"핀란드":"헬싱키", "스위스":"베른", "가나":"아크라"}
,2:{"베트남":"하노이", "말레이시아":"쿠알라룸푸르", "스웨덴":"스톡홀롬"}
,3:{"노르웨이":"오슬로", "대만":"타이베이", "파키스탄":"이슬라마바드"}
,4:{"크로아티아":"자그레브", "포르투갈":"리스본", "네덜란드":"암스테르담"}
,5:{"브라질":"브라질리아", "콩고민주공화국":"킨샤사", "모로코":"라바트"}}
def cityQuiz(dic, k, q, sc): # k : 퀴즈 종류, q : 퀴즈 번호
country = list(dic[k].keys())[q] # 딕셔너리 key(1,2,3,4,5)로 하위 딕셔너리의 key(핀란드, 스위스...)를 라져옴(리스트)
city = list(dic[k].values())[q] # 딕셔너리 key(1,2,3,4,5)로 하위 딕셔너리의 values(헬싱키, 베른...)를 라져옴(리스트)
a=input(f"{country}의 수도는?") # 수도를 입력 받음.
if a==city: # 입력 받은 수도와 정답 수도 비교
print("정답입니다")
sc += 20 # score 더함
else :
print(f"오답입니다, 정답은 {city}")
return sc # score 리턴
yn = 'Y'
while yn.upper() == 'Y':
score = 0
for i in range(1, len(dict)+1): # 5번 퀴즈 실행
q = random.randint(0,2) # 0.2 는 딕셔너리를 리스트로 변환해서 리스트의 인덱스 0부터 시작.
score = cityQuiz(dict, i, q, score) # 튀즘 함수 실행
print('획득한 점수는',score)
if score>=80 :
print("매우 잘하셨습니다.")
elif 80>score>=60 :
print("조금 더 노력하세요")
else :
print("아쉽네요")
yn = input('다시 진행하시겠습니까?(Y/N) : ')

728x90
반응형
'프로그램' 카테고리의 다른 글
| [파이썬] 제목 : 구구단 단수 입력 받아 출력 (0) | 2022.12.04 |
|---|---|
| [파이썬] 문제 : 과일의 가격, 개수 딕셔너리로 가격 총합 계산 (0) | 2022.12.04 |
| [파이썬] 문제 : 메뉴 선택하면 가격을 출력 (0) | 2022.12.04 |
| [파이썬] 문제 : csv 파일 주소에서 특정 단어가 있는 주소만 출력 (0) | 2022.12.04 |
| [파이썬] 문제 : 계산기 클래스 만들기 (0) | 2022.12.03 |
댓글