데이터 분석 관련

파이썬 조건문 : if문, if~else문, if~elif~else문 / 파이썬으로 가위바위보 하기

cjangela 2025. 2. 3. 00:29
반응형

 

프로그래밍을 하다 보면, 특정 조건을 만족할 때만 특정 코드를 실행해야 하는 경우가 많습니다. 파이썬에서는 이러한 조건 판단을 위해 if 문을 사용합니다. 이번 글에서는 if문을 비롯하여 if ~ else문, if ~ elif ~ else문을 설명하고, 이를 활용한 간단한 가위바위보 게임까지 만들어보겠습니다.

1. if문

  • if문은 특정 조건을 만족하는지 여부에 따라, 실행하는 코드가 달라지도록 만드는 명령어입니다. 조건을 설정하고, 그 조건이 True일 때만 특정 코드를 출력합니다.
  • if문에서는 들여쓰기가 매우 중요합니다. 들여 쓰기를 하지 않을 시 에러(IndentationError)가 발생합니다.
  • a_price가 3000보다 클 때, '아메리카노'라는 값을 출력하고 싶을 때 사용하는 조건문입니다.
a_price = 5000

if a_price > 3000:
    print('아메리카노')
[출력 값]
아메리카노
  • 위 코드에서 a_price가 5000으로 설정되어 있으므로, if a_price > 3000: 조건이 참(True)가되어 '아메리카노'가 출력됩니다. 만약 a_price가  2000이었다면, 조건이 거짓(False)이 되어 아무것도 출력되지 않습니다.

if문 출력 값

2. if~else문

  • if ~ else문을 사용하면 조건이 만족하지 않을 경우, 실행할 코드를 지정할 수 있습니다.
  • b_price가 6000 보다 크면 '아메리카노', 그렇지 않으면 '라떼'를 출력하는 예제를 실행해 보겠습니다.
b_price = 5000

if b_price > 6000:
    print('아메리카노')
else:
    print('라떼')
[출력 값]
라떼 
  • 위 코드에서 b_price가 5000이므로, if문에서 설정한 조건 b_price > 6000거짓(False)이 됩니다. 따라서 else문에 있는 '라떼'가 출력됩니다.

if~else문 기본 출력 방법

3. if~elif~else문

  • if ~ elif ~else문을 사용하면, 조건을 여러 개 지정할 수 있습니다.
  • 나이에 따라 값을 출력할 수 있도록 만든 예제를 실행해 보겠습니다. 
age = 15

if age > 15:
    print('성인입니다')
elif age == 15:
    print('청소년입니다')
else:
    print('어린이입니다')
[출력 값]
청소년입니다.
  • 위 코드에서 age가 15이므로, 첫 번째 조건 age > 15거짓(False)이고, 두 번째 조건인 age == 15참(True)이 되어 '청소년입니다'가 출력됩니다.

if~elif~else 기본 출력 방법

4. 응용 예제: 파이썬으로 가위바위보 게임 만들기

1) 랜덤 값 불러오기

  • 컴퓨터가 가위, 바위, 보 중 하나를 랜덤으로 선택할 수 있도록 random 모듈을 사용합니다.
  • random 모듈에 내재되어 있는 choice() 함수를 활용하여 가위, 바위, 보를 랜덤으로 불러올 수 있도록 설정합니다.
import random

choices = ['가위', '바위', '보']

computer = random.choice(choices)

2) input()을 통해 사용자 입력받기

  • 사용자가 가위, 바위, 보 중 하나를 입력할 수 있도록 input() 함수를 사용합니다.
  • player인 제가 값을 입력하지 않았기에, 아직 실행 중이라는 표시가 보입니다.
  • print() 문들은 실제 내가 낸 값과 컴퓨터가 낸 값을 확인하기 위해 출력하도록 설정한 것입니다.
player = input('가위, 바위, 보 중 하나를 입력하세요! >>')

print(f'\n나: {player}')
print(f'컴퓨터: {computer}')

가위바위보 - input()을 통해 사용자 입력받기

3) 승부 판정하기

  • 위에 값들을 그대로 둔 채, if문을 입력하였습니다.
  • 컴퓨터와 동일한 값이면 '비겼다!', 내가 이기면 '이겼다!', 컴퓨터가 이기면 '졌다!'가 출력될 수 있도록 하나씩 입력값을 넣어주었습니다. 그러면 다음과 같이 나와 컴퓨터와의 가위바위보 승부 결과를 확인할 수 있는 것입니다.
if player == computer:
    print('비겼다!')
elif player == '가위':
    if computer == '보':
        print('이겼다!')
    else:
        print('졌다!')
elif player == '바위':
    if computer == '가위':
        print('이겼다!')
    else:
        print('졌다!')
elif player == '보':
    if computer == '가위':
        print('졌다!')
    else:
        print('이겼다!')
else:
    print('입력이 잘못되었습니다.')
[출력 값] # 사용자가 가위를 입력하고, 컴퓨터가 가위를 선택한 경우:
가위, 바위, 보 중 하나를 입력하세요! >> 가위

나: 가위
컴퓨터: 가위
비겼다! 

가위바위보 - if문을 통해 판정받기


이번 글에서는 if, if ~ else, if ~ elif ~ else 문을 살펴보고, 이를 활용한 간단한 가위바위보 게임을 만들어 보았습니다. 조건문은 프로그래밍에서 필수적인 개념이고 많이 사용되니까, 개념을 정확하게 이해하고 가시면 좋을 듯합니다.

감사합니다:-)