Wednesday, January 17, 2007
Python/파이썬] 숫자 여부 판단 함수, 실수/정수인지 문자인지; isNumber isNum isNumeric
예를 들어 "123" 등의 문자열은 숫자로 이루어져 있기에 123 등의 진짜 숫자로 변환할 수 있습니다. 그러나 "GGG" 등의 문자열은 숫자로 변환할 수 없습니다.
어떤 문자열이 숫자로 이루어져 있는지, 즉, 숫자로 변환할 수 있는 문자열인지 아닌지 판단하는 함수가 파이썬에는 내장되어 있지 않더군요.
따라서 다음의 isNumber() 같은 함수를 직접 만들어야 합니다.
문자열이, 숫자(정수/실수)인지, 문자인지 알아내기 예제
숫자로 된 문자열은 참(True)을, 숫자로 변환할 수 없는 문자열은 거짓(False)을 반환합니다.
위의 함수를 실제 사용한 예제 프로그램: ▶▶ Python/파이썬] 실행시 옵션으로, 숫자 입력 받기 예제, Input Number argv (Argument, Option)
문자열을 숫자로 변환: ▶▶ Python/파이썬] 문자열을 숫자로 변환; 문자를 정수(int, long), 실수(float)로 바꾸기; String to Number
어떤 문자열이 숫자로 이루어져 있는지, 즉, 숫자로 변환할 수 있는 문자열인지 아닌지 판단하는 함수가 파이썬에는 내장되어 있지 않더군요.
따라서 다음의 isNumber() 같은 함수를 직접 만들어야 합니다.
문자열이, 숫자(정수/실수)인지, 문자인지 알아내기 예제
숫자로 된 문자열은 참(True)을, 숫자로 변환할 수 없는 문자열은 거짓(False)을 반환합니다.
#!/usr/bin/python
# -*- coding: cp949 -*-
def isNumber(s):
try:
float(s)
return True
except ValueError:
return False
print isNumber("123");
# 출력 결과: True
print isNumber("123.0");
# 출력 결과: True
print isNumber("+.5");
# 출력 결과: True
print isNumber(123);
# 출력 결과: True
print isNumber("123GGG");
# 출력 결과: False
print isNumber("0xFF");
# 출력 결과: False # 16진수 문자열은 인식 못함. 다만, 16진수 숫자는 됨
print isNumber(''); # 빈 문자열
# 출력 결과: False
print isNumber(' '); # 공백 문자
# 출력 결과: False
# -*- coding: cp949 -*-
def isNumber(s):
try:
float(s)
return True
except ValueError:
return False
print isNumber("123");
# 출력 결과: True
print isNumber("123.0");
# 출력 결과: True
print isNumber("+.5");
# 출력 결과: True
print isNumber(123);
# 출력 결과: True
print isNumber("123GGG");
# 출력 결과: False
print isNumber("0xFF");
# 출력 결과: False # 16진수 문자열은 인식 못함. 다만, 16진수 숫자는 됨
print isNumber(''); # 빈 문자열
# 출력 결과: False
print isNumber(' '); # 공백 문자
# 출력 결과: False
위의 함수를 실제 사용한 예제 프로그램: ▶▶ Python/파이썬] 실행시 옵션으로, 숫자 입력 받기 예제, Input Number argv (Argument, Option)
문자열을 숫자로 변환: ▶▶ Python/파이썬] 문자열을 숫자로 변환; 문자를 정수(int, long), 실수(float)로 바꾸기; String to Number
tag: python
Python | 파이썬 프로그래밍
와 정말 감사합니다... 학교에서 계산기 만드는데 참조하겠습니다.
<< Home