데이터 분석가

파이썬(Python) 프로젝트(가위바위보) 본문

파이썬(python) 프로젝트 모음

파이썬(Python) 프로젝트(가위바위보)

PlintAn 2023. 3. 1. 23:59

안녕하세요 

 

안내면 진거

 

이번 프로젝트에서는 random 함수를 불러와 이를 인덱싱하여 가위 바위 보 게임 만드는 것을

다루어 보겠습니다.

 

rock = '''
    _______
---'   ____)
      (_____)
      (_____)
      (____)
---.__(___)
'''

paper = '''
    _______
---'   ____)____
          ______)
          _______)
         _______)
---.__________)
'''

scissors = '''
    _______
---'   ____)____
          ______)
       __________)
      (____)
---.__(___)
'''

import random #random 함수 불러오기
game_images = [rock, paper, scissors] #가위, 바위, 보를 리스트에 넣는다

user_choice = int(input("rock is 0, paper is 1, scissors is 2.\n"))
#유저는 0은 바위, 1은 보, 2는 가위 중 선택한다

if user_choice >= 3 or user_choice < 0: #0보다 작거나 3보다 큰 수를 입력하면 자동 패배!
  print("You typed an invalid number, you lose!")
else:
  print(game_images[user_choice]) #game_images 리스트를 인덱싱하여 유저 선택에 따른 선택
  computer_choice = random.randint(0,2) #컴퓨터는 0-2 중 랜덤함수를 이용해 선택
  print("computer chose:") #컴퓨터의 선택은 출력:
  print(game_images[computer_choice]) #game_images 리스트를 인덱싱하여 컴퓨터 선택에 따른 선택
  
if user_choice == 0 and computer_choice == 2: #유저 0(바위) 일 때, 컴퓨터 2(가위)
  print("user win!") #유저 승
elif user_choice == 2 and computer_choice == 0: #유저 2(가위)일 때, 컴퓨터 0(바위) 
  print("computer win!") #컴퓨터 승
elif computer_choice > user_choice: #2(가위) > 1(보)일 때
  print("computer win!") #컴퓨터 승
elif computer_choice < user_choice: #1(보) < 2(가위)일 때
  print("user win!") #유저 승
elif computer_choice == user_choice: # 수가 같을 때
  print("its a draw") #드로우

식이 길어서 복잡해 보이지만 간단히 설명하자면

 

처음에 가위, 바위, 보를 선언한 후 , 이를 game_images 리스트에 넣습니다

 

그 후 random.randint 함수를 활용하기 위해 import random을 불러오고

 

if문을 활용해 가장 먼저 유저가 입력할 숫자 중 오류 값이나 예외 값을 설정합니다.

 

그 후 나머지는 일반화한 식으로 대응 가능합니다.

 

한 줄씩 차근차근 코딩을 해 본다면 이해가 쉬울 거에요 

 

 

화이팅해서 가위 바위 보 게임을 완성시켜 봅시다

Comments