본문 바로가기

파이썬

[Python3] 아스키 코드 변환하기 ord(), chr() 함수

ord(c)

하나의 문자를 아스키 코드 값으로 변환해주는 함수입니다.

>>> ord('abs')
--------------------------------------------------------------------
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: ord() expected a character, but string of length 3 found

두개 이상의 문자를 바꾸려고 하면 위와 같이 TypeError가 일어납니다.

ord()는 하나의 문자, 즉 길이가 1인 문자열을 반환하나 'abs'는 길이가 3인 문자열이기 때문입니다.

 

정확하게 입력하면 다음과 같은 결과를 얻을 수 있습니다.

>>> ord('a')
--------------------------------------------------------------------
97

 

chr(i)

아스키 코드를 문자로 변환해주는 함수입니다.

>>> chr(11111111)
--------------------------------------------------------------------
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: chr() arg not in range(0x110000)

미리 지정된 아스키코드의 범위를 넘어가면 오류가 뜹니다.

>>> chr(123)
--------------------------------------------------------------------
'{'

제대로 입력하면 위와 같은 결과를 얻을 수 있습니다.