카테고리 없음

영어단어장 만들기(Python / 파이썬)

coding232624 2023. 5. 31. 23:36

딕셔너리 / 랜덤 을 활용하여 영어단어장 만들기

 

코드1

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
32
33
34
35
36
37
38
39
40
import random
 
words_dic = {
    'balance' : '잔액',
    'certified' : '증명된, 공인된',
    'exceptionally' : '예외적으로, 대단히',
    'in person' : '몸소, 직접',
    'range' : '다양성',
    'claim' : '주장, 요구',
    'be sensitive to' : '~에 민감하다',
    'apparently' : '보기에 ~한 듯한, 외관상으로는',
    'manage' : '경영하다, 관리하다',
    'formal' : '공식적인, 형식적인',
    'involved' : '관여하는, 관계된, 연루된',
    'oar' : '노',
    'investigate' : '조사하다',
    'show' : '보여주다, 나타내다',
    'frighten' : '놀라게 하다',
    'fluency' : '유창함',
    'accessible' : '출입할 수 있는, 이용할 수 있는',
    'convey' : '전달하다',
    'valid' : '유효한',
    'national holiday' : '국경일',
}
 
words = [word for word in words_dic]
random.shuffle(words)
count = 0
 
for word in words:
    answer = input(f"{word} 의 뜻을 입력하세요 :").strip()
    korean = words_dic[word]
    if answer == korean:
        print("정답입니다.")
        count+=1
    else:
        print('틀렸습니다.')
        print(f'답은 {korean}입니다.')
 
print(count,'/','20')
cs

코드 2

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
import random
 
words_dic = {
}
 
print('단어와 뜻을 입력하세요 : ')
for i in range(40):
    a,b = input().split()
    words_dic[a] = b
words = [word for word in words_dic]
random.shuffle(words)
count = 0
 
while True:
    for word in words:
        answer = input(f"{word} 의 뜻을 입력하세요 :").strip()
        korean = words_dic[word]
        if answer == korean:
            print("정답입니다.")
            count+=1
        else:
            print('틀렸습니다.')
            print(f'답은 {korean}입니다.')
 
print(count,'/','40')
cs

 

 

 

추가해볼 사항

1. 딕셔너리 내용 입력받아 저장한 후 시험보기

2. 답이 2개 이상인것들은 하나만 맞어도 정답처리하도록 하기 => ','로 구분하여 처리해보기

3. 완전히 맞는것 제외 90%만 맞아도 정답처리하도록해보기 ex) 출입할 수 있는 == 출입할수 있는(둘다 정답처리할 수 있도록)