반응형
케이프 시퀀스, "\x \u \U"
Python에서 \x
, \u
, \U
는 각각 다른 유형의 이스케이프 시퀀스를 나타내며, 주로 유니코드 문자나 16진수 값에 대응하는 문자를 표현할 때 사용됩니다. 각 이스케이프 시퀀스는 사용법이 다르므로 하나씩 설명드리겠습니다.
1. \x
- 16진수 이스케이프 시퀀스 (Hexadecimal Escape Sequence)
\x
는 16진수 값을 사용하여 ASCII 또는 유니코드 문자를 나타냅니다. 반드시 두 자리 16진수 값을 입력해야 합니다.- 사용 범위: 0x00 ~ 0xFF (즉, 0에서 255까지의 값)
예시:
print('\x41') # 출력: 'A' (16진수 41은 문자 'A'에 해당)
print('\x7A') # 출력: 'z' (16진수 7A는 문자 'z'에 해당)
이 경우 16진수 값을 두 자리로 입력해야 합니다. 만약 불완전한 이스케이프 시퀀스를 입력하면 오류가 발생합니다.
2. \u
- 16비트 유니코드 이스케이프 시퀀스 (16-bit Unicode Escape Sequence)
\u
는 16비트 유니코드 문자(2바이트, 4자리 16진수 값)를 나타냅니다.- 사용 범위: U+0000 ~ U+FFFF
예시:
print('\u0041') # 출력: 'A' (U+0041은 문자 'A'에 해당)
print('\uAC00') # 출력: '가' (U+AC00은 한글 '가'에 해당)
이때 반드시 4자리 16진수 값을 입력해야 하며, 부족할 경우 앞에 0
을 채워야 합니다.
3. \U
- 32비트 유니코드 이스케이프 시퀀스 (32-bit Unicode Escape Sequence)
\U
는 32비트 유니코드 문자(4바이트, 8자리 16진수 값)를 나타냅니다. 주로 UTF-32 문자에 사용되며, 범위가 매우 큽니다.- 사용 범위: U+00000000 ~ U+10FFFF
예시:
print('\U00000041') # 출력: 'A' (U+00000041은 문자 'A'에 해당)
print('\U0001F600') # 출력: 😀 (U+1F600은 이모지 '😀'에 해당)
8자리 16진수 값
을 입력해야 하며, 자릿수가 부족하면 앞에 0
을 채워야 합니다. 예를 들어, 이모지 같은 문자는 보통 U+10000 이상의 값으로 표현됩니다.
요약:
\x
는 두 자리 16진수로 표현하는 ASCII 문자나 유니코드 문자를 나타냅니다.\u
는 4자리 16진수로 표현하는 유니코드 문자입니다.\U
는 8자리 16진수로 표현하는 유니코드 문자이며, 보다 넓은 유니코드 범위를 다룹니다.
각각의 이스케이프 시퀀스를 사용할 때는 반드시 정확한 자리수로 작성해야 오류가 발생하지 않으므로 주의가 필요합니다.
'실버를 위한 코딩 > 파이썬' 카테고리의 다른 글
[내장 함수] 파이썬 내장 함수 format() (2) | 2024.09.28 |
---|---|
[내장 함수] 파이썬 내장 함수 repr() (2) | 2024.09.27 |
[내장 함수] 파이썬 내장 함수 `ascii()` (3) | 2024.09.25 |
[내장 함수] 내장 함수 `any()` (2) | 2024.09.24 |
내장 함수 'all()' (1) | 2024.09.23 |