실버를 위한 코딩/파이썬

[내장 함수] 파이썬 내장 함수 'chr(i)'

forSilver 2024. 10. 10. 04:30
반응형

파이썬 내장 함수 'chr(i)'

파이썬의 내장 함수 chr()는 유니코드 코드 포인트(정수)를 받아서 해당하는 문자(character)를 반환합니다. 즉, 정수값을 문자로 변환하는 역할을 합니다.

chr() 함수의 문법

chr(i)
  • i: 유니코드 코드 포인트를 나타내는 정수 값. 이 값은 0에서 1,114,111 (0x10FFFF) 사이의 값을 가져야 합니다. 이 범위는 유니코드의 유효한 범위를 의미합니다.

반환 값

  • chr()는 입력받은 정수 값에 해당하는 문자를 반환합니다. 이 정수는 유니코드 표준을 따르며, ord() 함수의 반대 역할을 수행합니다.

예시

예시 1: 알파벳 변환

# 정수 97은 유니코드에서 소문자 'a'에 해당
print(chr(97))  # 출력: 'a'

# 정수 65는 유니코드에서 대문자 'A'에 해당
print(chr(65))  # 출력: 'A'

예시 2: 특수 문자 변환

# 정수 8364는 유로 기호(€)에 해당
print(chr(8364))  # 출력: '€'

# 정수 128512는 웃는 얼굴 이모지에 해당
print(chr(128512))  # 출력: '😀'

유니코드와의 관계

파이썬의 문자열은 기본적으로 유니코드를 기반으로 합니다. chr()는 정수를 입력받아 해당 정수에 해당하는 유니코드 문자를 반환하며, 그 반대 역할을 하는 함수는 ord()입니다.

예시 3: ord()chr()의 상호작용

# 문자 'A'의 유니코드 값은 65
print(ord('A'))  # 출력: 65

# 유니코드 값 65는 문자 'A'에 해당
print(chr(65))  # 출력: 'A'

범위

  • chr() 함수는 0에서 1,114,111 (0x10FFFF) 사이의 유니코드 값만 처리할 수 있습니다. 범위를 벗어난 값이 입력되면 ValueError가 발생합니다.
# 범위를 벗어난 값 사용 시 에러 발생
try:
    print(chr(1114112))  # 유니코드 범위를 초과
except ValueError as e:
    print(e)  # 출력: chr() arg not in range(0x110000)

마지막 유니코드
에러 발생
에러 처리 구문 삽입

 

이와 같이 chr() 함수는 유니코드 코드 포인트를 문자로 변환하는 간단하지만 매우 유용한 함수입니다.