본문 바로가기
Python

파이썬 - 농담게임

by 청원뿔세포 2022. 5. 6.

Invent Your Own Computer Games with Python, 4th Edition 이라는 책을 바탕으로 만들었습니다.

4장 농담게임

4장은 농담게임이다. 넌센스 퀴즈가 출력되면 입력을 받고 답을 출력하는 간단한 프로그램이다.

4장 농담게임 작동 예시

# jokes 게임의 출력 입력의 반복
print('What do you get when you cross a snowman with a vampire?')
input()
print('Frostbite!')
print()
print('What do dentists call an astronaut\'s cavity?')
input()
print('A black hole!')
print()
print('Knock knock.')
input()
print("Who's there?")
input()
print('Interrupting cow.')
input()
print('Interrupting cow wh', end='')
print('-MOO!')

작동예시에 맞춰 간단하게 출력과 입력을 반복해주면 되는 간단한 게임이다. 하지만 여기서 출력문에 들어가는 문장에서 사용된 문자열의 특징에대해 알아봐야 한다.

문자열을 만들 때 따옴표의 종류와 backslash(\)를 적절히 사용하는 방법을 알아야 한다.

예를들어 'What do dentists call an astronaut's cavity?'라는 문자열을 출력하고자 할 때 이 문자열 그대로 프린트문에 넣어서 출력을 하게되면 문제가 발생한다.

print('What do dentists call an astronaut's cavity?')

결과

문자열을 따옴표를 기준으로 자르기 때문에'What do dentists call an astronaut'까지만 문자열로 인식하고 그 뒤는 변수같은 다른 것으로 인식하여 오류가 문법오류가 발생하게 된다.

 

이 문제는 문자열 중간에 있는 작은 따옴표 앞에 백슬래시(\)를 써주거나 문자열 전체를 큰 따옴표로 감싸주면 해결된다.

 

문자열에 특수한 용도로 사용한 백슬래시를 이스케이프 문자(escape)라고 부른다. 

이스케이프 문자 예시
결과

 

댓글