파이썬에 대한 기본은 익혔다고 생각이 들어서
개인적으로 파이썬을 통해서 할 수 있는 사이드 프로젝트를 찾다가
마침 사이드 프로젝트에 대한 좋은 아이디어를 주는 사이트를 찾아 이를 참고하여
추후 파이썬과 관련된 사이드 프로젝트는 이 곳을 참고하여 하기로 했다.
(아래 링크 참고)
https://data-flair.training/blogs/python-project-ideas/
이번에 시작한 첫번째 프로젝트는 Number guessing 즉, 숫자 맞추기 게임이었다.
프로젝트를 시작 전에는 좀 어려울 것 같았는데, 생각보다 간단하게 끝낼 수 있어서 다행이었던 프로젝트였다.
프로젝트에 구현한 코드는 아래와 같다
import random
# 우리는 랜덤으로 나오는 숫자를 맞추어야 되기 때문에
# randint 함수를 써서 범위 내 숫자를 랜덤으로 선정해준다.
guess = random.randint(1,1001)
print(guess)
while True:
# 숫자 이외의 문자를 기입하는 수가 있으므로 항상 try - except 문을 써주어
# 이를 예방하는 것이 좋다.
try:
num = int(input("숫자를 추측해보세요!"))
if num == guess:
print("정답입니다! {0} 이 맞습니다".format(guess))
break
elif num < guess:
print("현재 숫자보다 작습니다")
if guess -5 <= num < guess:
print("조금만 + 를 해주세요")
elif num < guess-5:
print("좀 더 많이 더해주세요")
elif guess < num:
print("현재 숫자보다 큽니다")
if guess < num < guess + 5:
print("현재의 숫자에서 조금만 - 를 해주세요")
except:
print("숫자를 입력해주세요")
프로젝트 고려사항
1. 숫자를 랜덤으로 배정해주기 위해 random 함수의 randint 함수를 썼다.
2. 실수로 숫자 이외의 문자를 기입할 수 있으므로 try - except 문을 사용하여 이를 방지하고자 했다.
3. 정답에 가까이 왔다는 것을 알려주기 위해 연산을 더 해야하지만 이중 if 문을 사용하여 이를 문제를 푸는 사람에게 알려주고자 했다
(이중 if 를 안 사용하고 elif 를 사용하려고 했으나 num < guess 부분이 큰 개념이라 이중 if 를 사용하여 num guess 를 좀 더 세밀하게 쪼개어 거를 수 있도록 하고자 했다)
아래는 위 코드를 실행 후 나온 결과 값이다
간단하고 인터넷에 많이 있는 프로젝트지만 처음에 계획한 대로 구현이 되었다.
참고 링크:
https://opentutorials.org/module/2980/17837
--> try - except 의 아이디어는 위 링크를 참고했다.
'언어 > Python' 카테고리의 다른 글
Python side project 03 : Email slicer (이메일 슬라이서) (0) | 2020.05.24 |
---|---|
Python side project 02 : Rolling Dice (주사위 게임) (0) | 2020.05.22 |
extends( ) VS appends( ) (0) | 2020.05.01 |
base64 인코딩 (0) | 2020.04.28 |
python study : Generator (0) | 2020.03.28 |