elif (C의 else if) 문을 학습하기 위한 가위,바위,보 게임이다. 영어로는 Rock Paper Scissor라고 한다. 총 5번 게임을 하게 되어있고, 컴퓨터의 가위,바위,보는 랜덤함수를 사용해서 구한다. 3개 선택이 있으니까 1,2,3 세개가 나올 수 있으면 된다.
elif 문의 구조를 잘 살펴보면 어디에 뭐가 들어가야 하는지를 알 수 있다.
파이썬에서 주의할 것은 indentation 이다. 들여쓰기를 잘 하면 코드블록의 구분이 명확해지지만 한편으로 한칸만 빗나가도 인터프리터는 오류를 낸다는 것을 주의하자.
from random import randint
SRP = {"Scissors","Rock","Paper"}
# 게임횟수 range(횟수)
for i in range(5):
comSRP = randint(1,3)
userSRP = int(input("1.가위 2.바위 3.보 [선택] : "))
#유저가 가위
if userSRP == 1:
if comSRP == 1:
print("User: 가위, Com: 가위")
print("비겼어!")
elif comSRP == 2:
print("User: 가위, Com: 바위")
print("졌어!")
else:
print("User: 가위, Com: 보")
print("이겼어!")
#유저가 바위
elif userSRP == 2:
if comSRP == 1:
print("User: 바위, Com: 가위")
print("이겼어!")
elif comSRP == 2:
print("User: 바위,Com: 바위")
print("비겼어!")
else:
print("User: 바위, Com: 보")
print("졌어!")
# 유저가 보
else:
if comSRP == 1:
print("User: 보, Com: 가위")
print("이겼어!")
elif comSRP == 2:
print("User: 보, Com: 바위")
print("졌어!")
else:
print("User: 보, Com: 보")
print("비겼어!")
*switch case 문으로도 구현할 수 있다.
*숫자의 오류처리(1~3) 을 벗어났을 때의 루틴도 넣어주자. (1,2,3 세개만 선택될 수 있도록)