우당탕탕 개발공부

[커널 아카데미] 데이터 분석 부트캠프 18기_ Python 제어문 (if문) 본문

⌛ BootCamp/[커널아카데미] 데이터분석 부트캠프

[커널 아카데미] 데이터 분석 부트캠프 18기_ Python 제어문 (if문)

냥냥서 2025. 3. 12. 21:38

if문

: 조건의 참과 거짓을 판단하여 동작 수행

: 들여쓰기 주의하기 !

: 수행하지 않고 넘어가는 겨우 -> pass 사용

if - elif - else
if 조건문1 :
	수행문1
    
elif 조건문2:
	수행문1
    
else:
	수행문1

 

실습) 가위바위보 게임 만들기
- 결과 예시
' 플레이어는 가위를 냈습니다.'
' 컴퓨터는 보를 냈습니다.'
' 플레이어가 승리!'

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

player = input("가위, 바위, 보 중 하나를 입력해주세요.")

print(f"플레이어는 {player}를 냈습니다.")
print(f"컴퓨터는 {computer}를 냈습니다.")

if computer == player:
    print("무승부")
elif player == "가위":
    if computer == "보":
        print("플레이어 승리!")
    else:
        print("컴퓨터 승리!")
elif player == "바위":
    if computer == "보":
        print("컴퓨터 승리!")
    else:
        print("플레이어 승리!")
elif player == "보":
    if computer == "가위":
            print("컴퓨터 승리!")
    else:
        print("플레이어 승리!")
else:
    print("잘못 입력했습니다")

내가 작성한 코드는.. 뭐가 이리 길지 ...ㅎ... 무튼 제대로 결과물이 출력되긴 하지만 

코드의 가독성이 완전 꽝이다.. 이럴때 사용하는 방법은 !

 

딕셔너리 사용하기 !!

 

win_dict = {'가위':'보', "바위":"가위", "보":"바위"}

player = input("가위, 바위, 보 중 하나를 입력해주세요.")

print(f"플레이어는 {player}를 냈습니다.")
print(f"컴퓨터는 {computer}를 냈습니다.")


if player not in win_dict:
    print("잘못 입력했습니다.")
elif computer == player:
    print("무승부")
elif win_dict[computer] == player:
    print("컴퓨터 승리")
else:
    print("플레이어 승리")

결과값은 동일하지만! 훨씬 코드의 가독성이 높아졌다!

무작정 코드만 짜지 말고 ..ㅎ. 어떻게 하면 효율성있게 코드를 짤 수 있는지도.. 생각해 봐야겠다

파이썬 오랜만에 하려니까 헷갈린다 ~~~ ㅠ.ㅠ