728x90
반응형
1. 파이썬 ord 함수, chr 함수 기본 설명
2-1) ord(문자)
하나의 문자를 인자로 받고 해당 문자에 해당하는 유니코드 정수를 반환합니다.
ord('a')를 넣으면 정수 97을 반환합니다.
2-2) chr(정수)
하나의 정수를 인자로 받고 해당 정수에 해당하는 유니코드 문자를 반환합니다.
인자(정수)의 유효 범위는 0 ~ 1,114,111 (16진수 0x10 FFFF)까지 입니다.
chr(97)을 하면 문자 'a'를 반환합니다.
2. 파이썬 ord, chr 함수 예제
2-1) 기본 사용
result1 = ord('a')
result2 = ord('ㄱ')
result3 = hex(ord('b'))
print(f"ord('a') : {result1}")
print(f"ord('ㄱ') : {result2}")
print(f"hex(ord('b')) : {result3}\n")
result4 = chr(97)
result5 = chr(12593)
result6 = chr(0x62)
print(f"chr(97) : {result4}")
print(f"chr(12593) : {result5}")
print(f"chr(0x62) : {result6}")

ord (문자)를 이용해서 해당 문자에 해당하는 유니코드 정수가 잘 반환된 것을 볼 수 있습니다.
나온 유니코드 10진수를 16진수로 변경하고 싶다면 hex(.. )로 감싸주면 됩니다.
chr(숫자)를 이용해서 숫자에 해당하는 문자를 반환할 수 있습니다.
chr 함수도 마찬가지로 10진수, 16진수도 가능합니다.
2-2) for 반복문을 이용해서 연속된 값 변환
arr1 = []
arr2 = []
for val in range(97, 123):
arr1.append(chr(val)) # a ~ z
for val in range(12593, 12623):
arr2.append(chr(val)) # ㄱ ~ ㅎ
print(f"chr(97) ~ chr(122) : {arr1}")
print(f"chr(12593) ~ chr(12622) : {arr2}")
print()
print(f"ord('a') ~ ord('z') : ", end="")
for val in arr1:
print(ord(val), end=" ")
print()
print(f"ord('ㄱ') ~ ord('ㅎ') : ", end="")
for val in arr2:
print(ord(val), end=" ")

이렇게 a~z 문자와 97~122 숫자가 서로 변환하는 것을 볼 수 있었습니다.
'ㄱ'~'ㅎ' 문자 또한 12593 ~ 12622 숫자와 함께 대응되는 것을 볼 수 있습니다.
더보기
출처: https://blockdmask.tistory.com/544 [개발자 지망생]
728x90
반응형
'Python' 카테고리의 다른 글
파이썬(Python) : 람다(lambda) - key sort, key 정렬 (0) | 2022.03.29 |
---|---|
Python(파이썬) : sort(key = lambda x : x[0]) (0) | 2022.02.17 |
파이썬(Python) in, not in (0) | 2022.01.30 |
[Python 문법] 파이썬 입력 받기(sys.stdin.readline) (0) | 2022.01.28 |
파이썬(Python) : set() (0) | 2022.01.06 |