콘텐츠 내 자동삽입광고

광고1

posted by 초코생크림빵 2025. 8. 23. 14:52
반응형

중요) 조건식의 끝에는 항상 콜론(:)이 붙어야 하며, 들여쓰기를 통해 코드 블록을 구분해야 합니다.

<소스>

import random
rps=['가위', '바위', '보']
com=random.choice(rps)

player=input('가위, 바위, 보 중에서 하나 입력: ')

if player=='가위':
    if com=='가위':
        result='비김'
    elif com=='바위':
        result='졌음'
    elif com=='보':
        result='이김'
elif player=='바위':
    if com=='가위':
        result='이김'
    elif com=='바위':
        result='비김'
    elif com=='보':
        result='졌음'
elif player=='보':
    if com=='가위':
        result='졌음'
    elif com=='바위':
        result='이김'
    elif com=='보':
        result='비김'

if player in rps:
    print(f'나:{player}, 컴퓨터: {com} => {result}')
else:
    print('잘못 입력하셨습니다. 다시 입력하세요.')
    
파이썬 소스입니다. 소스 설명)

 

플레이어가 입력한 값과 컴퓨터가 무작위로 선택한 값을 비교하여 승패를 판정합니다.


소스 코드 설명

1. 라이브러리 및 변수 초기화

  • import random: random 모듈을 불러옵니다. 이 모듈은 무작위로 값을 선택하는 데 사용됩니다.
  • rps=['가위', '바위', '보']: 가위바위보에 사용할 선택지들을 리스트 rps에 저장합니다.
  • com=random.choice(rps): random.choice() 함수를 사용하여 rps 리스트에서 무작위로 하나의 값을 선택하고, 그 값을 변수 com (컴퓨터의 선택)에 할당합니다.
  • player=input('가위, 바위, 보 중에서 하나 입력: '): input() 함수를 사용해 사용자에게 가위, 바위, 보 중 하나를 입력하라는 메시지를 출력합니다. 사용자가 입력한 값은 변수 player에 저장됩니다.

2. 승패 판정 로직

이 부분은 if-elif-else 조건문을 사용하여 플레이어의 입력값과 컴퓨터의 선택값을 비교하고, 그에 따른 결과를 변수 result에 저장합니다.

  • if player=='가위':: 만약 플레이어가 **'가위'**를 냈을 때,
    • if com=='가위': result='비김': 컴퓨터도 '가위'를 냈다면 '비김'
    • elif com=='바위': result='졌음': 컴퓨터가 '바위'를 냈다면 '졌음'
    • elif com=='보': result='이김': 컴퓨터가 '보'를 냈다면 '이김'
  • elif player=='바위':: 플레이어가 **'바위'**를 냈을 때도 위와 같은 방식으로 승패를 판정합니다.
  • elif player=='보':: 플레이어가 **'보'**를 냈을 때도 동일한 방식으로 판정합니다.

3. 결과 출력 및 예외 처리

  • if player in rps:: 플레이어가 입력한 값이 rps 리스트('가위', '바위', '보') 안에 있는지 확인합니다.
    • print(f'나:{player}, 컴퓨터: {com} => {result}'): 만약 올바른 값을 입력했다면, f-string을 사용하여 플레이어와 컴퓨터의 선택, 그리고 판정 결과를 출력합니다.
  • else:: 플레이어가 rps 리스트에 없는 값을 입력했을 경우,

print('잘못 입력하셨습니다. 다시 입력하세요.'): 잘못된 입력이라는 메시지를 출력합니다.

 

반응형

콘텐츠 내 자동삽입광고