파이썬 문자 숫자 비교 - paisseon munja susja bigyo

Codeit Logo

로그인

프로그래밍 핵심 개념 in Python자료형숫자형

문자와 숫자 비교

2020년 12월 28일

1,024 조회

답변 1

정혜인

LV

18

파이썬 문자 숫자 비교 - paisseon munja susja bigyo

정혜인

LV

18

파이썬 문자 숫자 비교 - paisseon munja susja bigyo

질문 지켜보기를 시작하면 질문에 답변, 댓글이 달릴 때 알림을 받을 수 있어요.

댓글 1개

1

2021년 3월 3일

와... 저도 코린인데 질문자분은 저오는 다른 코린이신가요? 코린이코스인데도 코드를 막 적으시고 대단하시네요ㅠㅠ 부럽습니다

cheezzz

2020년 12월 29일

LV

123

파이썬 문자 숫자 비교 - paisseon munja susja bigyo

댓글 0개

0

질문 지켜보기

질문 지켜보기를 시작하면 질문에 답변, 댓글이 달릴 때 알림을 받을 수 있어요.

1. 숫자 판별 - isdecimal( ), isdigit( ), isnumeric( )

보통 isdigit( )을 가장 많이 쓴다.

s = "28212"
print(s.isdigit())	# True

# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
print(s.isdigit())	# False

셋 다 숫자 판별에 쓰이는 함수이다. 무슨 차이일까?

  • isdecimal( ) ⊆ isdigit( ) ⊆ isnumeric( )
  • isdecimal( ): 어떤 문자열이 int형으로 변환이 가능하면 True를 반환한다.
  • isdigit( ): 어떤 문자열이 숫자의 형태면 True를 반환한다. (예: 3², ², ..)
  • isnumeric( ): 숫자값 표현에 해당하는 문자열이면 True를 반환한다. (예: 3², ², ½, ...)

정확하게 int형으로 변환이 가능한 리터럴인지 판별하고 싶으면 isdecimal( )을 사용하자.

2. 문자열 판별 - isalpha( )

주어진 문자열이 알파벳으로만 구성되어 있는지 판별한다. 공백이 있으면 False를 반환한다.

name = "Monica"
print(name.isalpha())	# True

# contains whitespace
name = "Monica Geller"
print(name.isalpha())	# False

# contains number
name = "Mo3nicaGell22er"
print(name.isalpha())	# False

3. 숫자 + 문자열 판별 isalnum( )

주어진 문자열이 알파벳+숫자로만 구성되어 있는지 판별한다. 알파벳이나 숫자 둘 중 하나로만 구성되어 있어도 True를 반환하고, 공백이 있으면 False를 반환한다.

name = "M234onica"
print(name.isalnum())	# True

# contains whitespace
name = "M3onica Gell22er "
print(name.isalnum())	# False

name = "Mo3nicaGell22er"
print(name.isalnum())	# True

name = "133"
print(name.isalnum())	# True

참고

Python String isalpha()

Join our newsletter for the latest updates.

www.programiz.com

What's the difference between str.isdigit, isnumeric and isdecimal in python?

When I run these methods s.isdigit() s.isnumeric() s.isdecimal() I always got as output or all True, or all False for each value of s (which is of course a string). What's​ the difference betwee...

stackoverflow.com

파이썬 문자 숫자 비교 - paisseon munja susja bigyo

Python에서 float(), int() 함수들을 이용하여 문자를 숫자로 변환할 수 있습니다.

1. int()으로 String을 Integer로 변환

int()는 인자로 전달된 문자열을 Integer로 변환합니다.

num_str = '10'
print(num_str)
print(type(num_str))

num = int(num_str)
print(num)
print(type(num))

Output:

10
<class 'str'>
10
<class 'int'>

만약 Float 형태의 문자를 int()로 변환하려고 시도하면 ValueError가 발생합니다.

num_str = '10.02'
num = int(num_str)

Output:

Traceback (most recent call last):
  File "/home/js/IdeaProjects/python-examples/inttostr.py", line 2, in <module>
    num = int(num_str)
ValueError: invalid literal for int() with base 10: '10.02'

2. float()으로 String을 Float으로 변환

float()은 인자로 전달된 문자열을 Float으로 변환합니다.

num_str = '10.02'
print(num_str)
print(type(num_str))

num = float(num_str)
print(num)
print(type(num))

Output:

10.02
<class 'str'>
10.02
<class 'float'>

소수가 없는 Integer 형태의 문자는 float()으로 변환이 됩니다.

num_str = '10'
print(num_str)
print(type(num_str))

num = float(num_str)
print(num)
print(type(num))

Output:

10
<class 'str'>
10.0
<class 'float'>

References

  • RealPython - String

  • Python - asyncio로 비동기 처리 구현
  • Python - venv로 가상환경 구성 및 설정
  • Python - 리스트 필터링, 3가지 방법
  • Python - 딕셔너리 필터링, 3가지 방법
  • Python 명령행 인자 받기 (argparse)
  • Python - pathlib 실행 파일 경로, 작업 디렉토리 확인, 변경
  • Python - 빈 파일 생성, 3가지 방법
  • Python - 파일 이름 변경, 3가지 방법
  • Python - 랜덤 float 생성 방법
  • Python - 리스트 역순으로 순회
  • Python - 싱글턴(Singleton) 패턴, 3가지 방법
  • Python - 객체 리스트 정렬
  • Python - 리스트 복사 (deep, shallow copy)
  • Python - 패킹(packing), 언패킹(unpacking)
  • Python - 리스트를 튜플로 변환, 3가지 방법
  • Python - 튜플을 리스트로 변환, 4가지 방법
  • Python - 객체를 문자열(string)로 변환
  • Python - sum()으로 딕셔너리 합계 계산
  • Python - Set 요소 추가, 삭제 방법
  • Python - Set 생성 및 초기화 방법
  • Python - 반복문으로 Set 순회

codechachaCopyright ©2019 codechacha