Backend/Python
첫코딩 : 배스킨라빈스31 게임
surge_95
2022. 3. 17. 00:32
from random import *
print('game start')
cnt = 1
while True:
while True: # 에러 처리
try:
N = int(input('[Player1] How many do you count(1~3):'))
if N >= 1 and N <= 3:
break
else:
print('You can count only 1 or 2 or 3')
except:
print("Error. Try again")
for i in range(N):
print('{}'.format(cnt+i), end=" ") # 줄바꿈없이 출력
print()
cnt = cnt + N
if cnt >= 31:
break
N = randint(1, 3) # 컴퓨터 참가자 추가
print('[computer]How many do you count?:{}'.format(N))
for i in range(N):
print('{}'.format(cnt+i), end=" ")
print()
cnt = cnt + N
if cnt >= 31:
break
print('game over')
# 예외처리부분 함수처리로 코드 단순화
from random import *
import time
def rightInput(Q):
while True:
try:
N = int(input(Q))
if N >= 1 and N <= 3:
break
else:
print('You can count only 1 or 2 or 3')
except:
print("Error. Try again")
return N
print('game start')
cnt = 1
while True:
N = rightInput('[Player1] How many do you count(1~3):')
for i in range(N):
print('{}'.format(cnt+i), end=" ")
print()
cnt = cnt + N
if cnt >= 31:
break
time.sleep(2) # slee함수(time패키지):컴퓨터 반응속도 늦추기
N = randint(1, 3)
print('[computer]How many do you count?:{}'.format(N))
for i in range(N):
print('{}'.format(cnt+i), end=" ")
print()
cnt = cnt + N
if cnt >= 31:
break
print('game over')
* TypeError: 'NoneType' : 함수에서 return되는 값이 없을때! → return의 줄정렬을 다시 확인하여 해결함.