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의 줄정렬을 다시 확인하여 해결함.
'Backend > Python' 카테고리의 다른 글
| 첫코딩 : 스레드(thread) (0) | 2022.03.20 |
|---|---|
| 웹크롤링 3. 셀레니움으로 네이버 상품정보 수집 (0) | 2022.03.02 |
| 웹크롤링 2.주식현재가 엑셀로 저장하기 (0) | 2022.03.02 |
| 웹크롤링 1. 뉴스제목+링크 가져오기 (0) | 2022.03.02 |
| 모듈 (0) | 2022.02.06 |