언어/Python

Python side project 01 : Number guessing(숫자 맞추기 게임)

쟈누이 2020. 5. 21. 00:24
반응형

 

 

 

파이썬에 대한 기본은 익혔다고 생각이 들어서

개인적으로 파이썬을 통해서 할 수 있는 사이드 프로젝트를 찾다가 

마침 사이드 프로젝트에 대한 좋은 아이디어를 주는 사이트를 찾아 이를 참고하여

추후 파이썬과 관련된 사이드 프로젝트는 이 곳을 참고하여 하기로 했다.

 

(아래 링크 참고)

https://data-flair.training/blogs/python-project-ideas/

 

Python Project Ideas for 2020 - Work on real-time projects to head start your career - DataFlair

Work on Python Project Ideas for beginners, intermediates, and experts to boost your career, strengthen your resume and become Python expert.

data-flair.training

이번에 시작한 첫번째 프로젝트는 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

 

숫자 맞추기 게임1 (업다운 게임) - 파이썬_실전 프로젝트

랜덤으로 숫자를 생성한후에, 추측한 숫자를 입력하면, 큰지 작은지 판단해서 알려주고, 다시 추측하는 간단한 게임을 만들어 보겠습니다. 1. 숫자 입력받기 guess = input("숫자를 입력하세요 :") pri

opentutorials.org

--> try - except 의 아이디어는 위 링크를 참고했다.

반응형