[Python]_단어장 맞추기

hanseungjune·2022년 6월 13일
0

Python

목록 보기
28/38


풀이

with open("vocabulary.txt", "r") as f:
    for line in f:
        exam = input(line.strip().split()[0])
        if exam == line.strip().split()[1]:
            print("맞았습니다!")
        elif exam != line.strip().split()[1]:
            print("아쉽습니다. 정답은 {}입니다.".format(line.strip().split()[1]))

일단 해당 코드로 맞추긴 했다. 한줄씩 가지고 와서 입력창을 띄우고 거기다가 띄어쓰기 없이 입력을 한다. 그리고 메모장에 기록 되어있는 정답과 일치하면 맞았다고 한다. 틀리면 아쉽다고하면서 정답을 알려줌. 결과물은 ...

모범답안

with open('vocabulary.txt', 'r') as f:
    for line in f:
        data = line.strip().split(": ")
        english_word, korean_word = data[0], data[1]
        
        # 유저 입력값 받기
        guess = input("{}: ".format(korean_word))
        
        # 정답 확인하기
        if guess == english_word:
            print("맞았습니다!\n")
        else:
            print("아쉽습니다. 정답은 {}입니다.\n".format(english_word))

역시 모범답안 코드가 비교적 깔끔해 보인다. split으로 구분한 값을 english_word, korean_word로 나누어서 저장을 했다는게 깔끔하고

guess 라는 변수값이 입력값으로 저장되는데 이 guess 저장값이 english_word와 같으면 정답, 다르면 오답으로 표시해주었다. 역시 클린코드는 변수값을 깔끔하게 저장해주는 것에 있다고 본다.

profile
필요하다면 공부하는 개발자, 한승준

0개의 댓글