본문 바로가기
IT/Python Basic

[python] 문자와 ASCII/Unicode 변환 - ord()와 chr() 함수 정리

by Echinacea 2025. 2. 27.
반응형

 

 

1️⃣ ord() 함수란?

ord() 함수는 문자(character)를 해당하는 ASCII(또는 Unicode) 코드값으로 변환하는 함수이다.

 

✅ 기본 문법

ord(character)
  • character: 길이가 1인 문자열 (예: 'a', '1', '가')
  • 반환값: 해당 문자의 정수형 코드값 (ASCII 또는 Unicode)

 

✅ 예제

print(ord('A'))  # 65 (ASCII 코드 값)
print(ord('a'))  # 97 (ASCII 코드 값)
print(ord('0'))  # 48 (숫자 0의 ASCII 코드 값)
print(ord('가')) # 44032 (한글 유니코드 값)

 

✅ 활용 사례

 

1. 문자 비교 및 정렬

print(ord('b') > ord('a'))  # True (98 > 97)

 

2. 암호화, 변환 로직 구현 (예: 숫자를 문자로 매핑)

num = 3
char = chr(ord('A') + num)
print(char)  # 'D' (A에서 3칸 이동)

 

 

2️⃣ chr() 함수란?

chr() 함수는 ASCII 또는 Unicode 숫자 값을 해당하는 문자(character)로 변환하는 함수이다.

 

✅ 기본 문법

chr(integer)
  • integer: ASCII 또는 Unicode 값(정수)
  • 반환값: 해당하는 문자 (1글자 문자열)

 

✅ 예제

print(chr(65))  # 'A' (ASCII 65 → 문자 'A')
print(chr(97))  # 'a' (ASCII 97 → 문자 'a')
print(chr(48))  # '0' (ASCII 48 → 문자 '0')
print(chr(44032))  # '가' (한글 유니코드 값 → '가')

 

✅ 활용 사례

1. 숫자를 문자로 변환하여 문자열 생성

text = ""
for i in range(97, 100):  # ASCII 값 97(a) ~ 99(c)
    text += chr(i)
print(text)  # 'abc'

 

2. 간단한 암호화 기법

def encode(text):
    return ''.join(chr(ord(char) + 1) for char in text)

def decode(encoded_text):
    return ''.join(chr(ord(char) - 1) for char in encoded_text)

message = "hello"
encoded = encode(message)
decoded = decode(encoded)
print(encoded)  # 'ifmmp'
print(decoded)  # 'hello'

 

 

3️⃣ ord()와 chr()의 활용

함수 역할

ord('A') 문자 'A' → ASCII 코드 65 반환
chr(65) ASCII 코드 65 → 문자 'A' 변환
ord('가') 문자 '가' → 유니코드 44032 반환
chr(44032) 유니코드 44032 → 문자 '가' 변환

문자 변환을 통해 암호화, 정렬, 인코딩 작업을 수행할 수 있음

 

반응형

댓글