파이썬, 문자열 내용이 숫자로 바꿀 수 있는지 검사하기

 

글. 오상문 sualchi@daum.net

 

문자열로 입력받은 점수가 숫자로 바뀔 수 있으면
그 두배를 출력하고, 아니면 오류 메시지 출력하는 예제입니다. 

소스 코드는 다음과 같습니다.

 

# 숫자로 바꿀 수 있는 자료형인지 검사하는 함수
def isNumberStr(s):
  try:
    float(s)
    return True
  except ValueError:
    return False
 
#-----------------------------------------------------------
score = input("점수 입력(정수 0~100): ") # 예: 100, 100.1, 백

 

if(isNumberStr(score)): # 숫자로 바꿀 수 있으면
  score = int(float(score)) # 먼저 float로 바꾸고 int로 변경
  print("점수 두배:", score*2) 
else:  # 정수,실수로 바꿀 수 없으면
  print("숫자로 바꿀 수 없습니다.")

 

<이상>

 

반응형

+ Recent posts