Python의 원시 문자열 및 유니코드 문자열

Neema Muganga 2023년1월30일
  1. Python의 원시 문자열
  2. 파이썬 유니코드 문자열
Python의 원시 문자열 및 유니코드 문자열

Python의 원시 문자열

Python의 원시 문자열 리터럴은 여는 따옴표 앞에 r 또는 R이 접두사로 붙는 일반 문자열을 정의합니다. 백슬래시(\)가 문자열에 있는 경우 원시 문자열은 이 문자를 리터럴 문자로 취급하지만 이스케이프 문자는 취급하지 않습니다.

예를 들어,

print(r"\n")
print(r"\t")

출력:

\n
\t

줄 바꿈이나 새 탭과 같은 이스케이프 시퀀스의 시작으로 오인되지 않도록 문자열을 정의할 때 모든 백슬래시를 두 배로 늘려야 합니다. 정규 표현식의 구문과 Windows 파일 경로를 표현할 때 이러한 구문 적용을 볼 수 있습니다.

참고
r은 백슬래시를 리터럴로 취급하기 때문에 r'\'은 구문 오류를 발생시킵니다. r 접두사가 없으면 백슬래시는 이스케이프 문자로 처리됩니다.

예시:

text = "Hello\nWorld"
print(text)

출력:

Hello
World

원시 문자열 플래그 r이 없으면 백슬래시가 이스케이프 문자로 처리되므로 위의 문자열이 인쇄될 때 새 줄 이스케이프 시퀀스가 ​​생성됩니다. 따라서 텍스트의 두 문자열은 출력에 표시된 대로 별도의 줄에 인쇄됩니다.

동일한 텍스트 예제를 사용하여 문자열 앞에 r 접두사를 추가합니다.

예시:

text = r"Hello\nWorld"
print(text)

출력:

Hello\nWorld

출력에서 원시 문자열 플래그는 백슬래시를 리터럴로 취급하고 백슬래시가 포함된 텍스트를 인쇄합니다. 따라서 백슬래시 문자가 이스케이프되지 않기 때문에 입력과 출력이 모두 동일합니다.

예를 들어 '\\n'r'\n'은 같은 값을 갖습니다.

print("\\n")
print(r"\n")

파이썬 유니코드 문자열

유니코드는 파이썬 문자열을 저장하는 한 가지 방법입니다. 유니코드는 모든 언어 유형의 문자열을 저장할 수 있습니다. 두 번째 방법은 Python에서 str로 표시되는 ASCII 유형의 문자열 저장소입니다. str은 Python에서 문자열을 저장하는 기본 데이터 유형입니다.

문자열을 유니코드 유형으로 변환하려면 u'string'과 같이 텍스트 앞에 u를 넣거나 unicode('string')와 같은 unicode() 함수를 호출합니다.

u'text'는 유니코드 문자열이고 text는 바이트 문자열입니다. 유니코드 개체는 더 많은 메모리 공간을 차지합니다.

예를 들어,

test = u"一二三"
print(test)

출력:

一二三

관련 문장 - Python String