13.1 Escape 문자 목록
Escape 문자는 컴퓨터 기술이 발전하기 이전에 텍스트 문자열에 제어 코드를 삽입하는 방법으로 등장했어. 초기에는 프린터나 텔레타이프 같은 기기를 제어하기 위해 사용되었고, 데이터 스트림에 줄 바꿈이나 캐리지 리턴 같은 명령을 직접 삽입할 수 있었지.
프로그래밍이 발전하면서 이러한 문자는 C를 포함한 표준 프로그래밍 언어의 일부가 되었어. Python과 다른 언어로도 넘어왔지. Python에서는 \문자로 시작하는 escape 문자로 특별한 기능을 나타내는데, 예를 들어 \n은 새 줄을 의미하지.
Python에서 escape 문자는 문자열 처리를 할 때 중요한 역할을 해. 직접적으로 문자열에 포함하기 어려운 특별 문자를 삽입할 수 있어.
여기 가장 인기 있는 escape 문자 표야.
| Escape 문자 | 설명 |
|---|---|
\\ |
역슬래시. |
\' |
싱글 쿼트. |
\" |
더블 쿼트. |
\n |
새 줄. |
\r |
캐리지 리턴. |
\t |
수평 탭. |
\b |
백스페이스, 이전 문자를 삭제. |
\f |
폼 피드. |
\a |
벨 소리. |
폼 피드와 벨 소리는 프린터나 텔레타이프에 텍스트를 출력하던 시절의 산물이야. 하지만 이건 정말 옛날 얘기야.
수평 탭은 코드를 정렬할 때 자주 사용돼.
13.2 Unicode 문자 삽입
컴퓨터가 처음 발명되었을 때는 라틴 문자, 숫자, 몇 가지 기호만 포함하는 문자열만 처리할 수 있었어. 첫 번째 문자 세트(ASCII 인코딩)는 제어 문자 포함 128개의 문자만 포함했지 :)
Unicode는 1987년 조 베커와 리 콜린스가 모든 세계의 글자를 지원하는 새로운 문자 인코딩 시스템의 가능성을 논의하면서 시작됐어.
그들은 Unicode를 16비트 시스템으로 구상했는데, 이는 65,536개의 고유한 문자를 사용할 수 있게 해줬지. 하지만 그게 전부는 아니었어 :)
시간이 지나면서 Unicode는 더 많은 "언어 스크립트"뿐만 아니라 방대한 기호 세트, 이모지, 역사적인 텍스트도 포함하게 되었어. 2020년 3월에 발표된 Unicode 13.0은 150개가 넘는 "스크립트"와 다양한 기호 세트를 포함한 143,000개 이상의 문자를 포함하고 있어. 디지털 시대에 맞는 종합적인 인코딩 시스템이 된 거지.
Python에 Unicode가 추가된 것은 2000년 10월 Python 2.0이 출시되면서야. 이 중요한 변화로 Python은 국제적 언어와 문자를 더 잘 지원할 수 있게 되었고, 국제 애플리케이션 개발이 좀 더 쉬워졌어.
Python 코드를 작성할 때 파일 인코딩은 Unicode를 지원하기 때문에, 텍스트에 원하는 언어의 문자를 삽입할 수 있어:
print("Come to the Dark Side") # 영어
print("Ven al Lado Oscuro") # 스페인어
print("Komm auf die dunkle Seite") # 독일어
print("暗黒面に来なさい") # 일본어
print("来到黑暗面") # 중국어
Unicode 번호로 텍스트에 문자를 삽입하려면 16진법 인코딩을 사용할 수 있어:
| Escape 문자 | 설명 |
|---|---|
| \\uXXXX | 16비트 16진수 값 XXXX로 표시되는 Unicode 문자. |
| \\UXXXXXXXX | 32비트 16진수 값 XXXXXXXX로 표시되는 Unicode 문자. |
13.3 이모지 삽입
Python 텍스트와 코드에 이모지나 에모티콘을 삽입하는 것은 메시지의 시각적 인식과 감정적 내용을 향상시키는 재미있는 방법이 될 수 있어. 이모지는 Unicode 기호이며, Python 문자열 데이터에 직접 추가할 수 있어.
Python에서 이모지는 Unicode 표준을 사용해. Unicode에는 수천 개의 기호가 포함되어 있으며, 그 중 많은 이모지가 있어. 각 이모지에는 고유한 Unicode 번호가 있어서 텍스트에 삽입할 수 있어.
이모지 삽입 예제
인터넷에서 복사해서 텍스트에 붙여넣기만 하면 돼.
# 이모지 출력 예제
print(" 😀 ") # 😀 출력
Unicode를 사용한 이모지 삽입 예제
이모지를 삽입하려면 그 코드 값을 알고, 문자열에 u 접두사를 붙여 사용하면 돼:
# 이모지 출력 예제
print(u"\U0001F600") # 😀
라이브러리 사용하기
emoji 라이브러리처럼 이모지 작업을 단순화하는 라이브러리가 있어:
# emoji 라이브러리 사용
from emoji import emojize
print(emojize(":grinning_face:"))
이모지는 모바일과 웹 애플리케이션에서 널리 사용되고 있어, Python도 예외는 아니야. 채팅 봇, 포럼, 댓글 등 사용자 상호작용에서 명확성과 감정적 표현을 추가할 수 있지.
GO TO FULL VERSION