본문 바로가기

과제

[파이썬 기초복습반] 220917 과제1 - 가위바위보 게임

import random # 임의의 숫자를 무작위로 추출하기 위해 설정

def picked(): # 사용자와 컴퓨터의 가위, 바위, 보 선택

    answer = ['가위', '바위', '보'] # 선택할 수 있는 범위

    while True: # 선택 범위에 존재하는 입력값을 받을 때까지 반복
          user_pick = input("가위, 바위, 보 중 1개를 입력해주세요.")
          if user_pick in answer:        # 입력값이 선택 범위에 포함되어 있다면
                break                    # 반복문 탈출
          else:
               print("다시 입력해주세요.")

    random_num = random.randint(0,2)     # 0~2 중 랜덤으로 1개의 숫자를 추출
    com_pick = answer[random_num]        # 해당 숫자를 인덱스로 활용하여 선택범위(answer)의 한 요소를 추출
    return com_pick, user_pick           # 최종적으로 컴퓨터와 사용자의 선택값을 반환

com_pick, user_pick = picked()           # 호출한 함수에서 전달받은 두 개의 값을 각각 변수에 할당
result = [com_pick, user_pick]           # 각 값을 리스트로 묶어줌
print(f"computer: {com_pick} vs user: {user_pick}") # 정답 확인용 코드

user_win_case = [['바위', '보'],['가위', '바위'],['보', '가위']]  # 순서 : com_pick, user_pick / 사용자가 승리할 경우의 가짓수을 저장

if com_pick == user_pick:       # 컴퓨터의 선택과 사용자의 선택이 똑같다면
    print("무승부입니다.")

elif result in user_win_case:   # 사용자가 승리할 경우의 가짓수를 담은 리스트 안에 일치하는 값이 있다면
    print("이겼습니다.")

else:
    print("졌습니다.")

 

실행 화면