>백엔드 개발 >파이썬 튜토리얼 >Python 문자 인코딩 변환 비밀

Python 문자 인코딩 변환 비밀

高洛峰
高洛峰원래의
2016-10-19 11:41:361498검색

Python에는 str 개체와 unicode 개체라는 두 가지 유형의 문자열이 있으며 둘 다 문자의 바이트 인코딩을 저장할 수 있지만 이는 매우 중요하며 인코딩과 디코딩이 있는 이유입니다. Python에서

encode 및 decode의 의미는

encode

unicode ------------------로 표현할 수 있습니다. ------> str

유니코드

디코드

몇 가지 일반적인 방법:

str_string.decode('codec')는 str_string을 unicode_string으로 변환하고, codec은 소스 str_string의 인코딩 방법입니다.

unicode_string.encode( ' codec')는 unicode_string을 str_string으로 변환하는 것이며 코덱은 대상 str_string의 인코딩 방법입니다

str_string.decode('from_codec').encode('to_codec')는 서로 다른 인코딩의 str_string 간 변환을 달성할 수 있습니다

예:

>>> t='Great Wall'

>>> t

'xb3xa4xb3xc7'

>> > t.decode('gb2312').encode('utf-8')

'xe9x95xbfxe5x9fx8e'

str_string.encode('codec')는 먼저 시스템의 기본 코덱을 호출하여 str_string을 변환합니다. unicode_string이고, 인코딩 매개변수 코덱을 사용하여 이를 최종 str_string으로 변환합니다. str_string.decode('sys_codec').encode('codec')와 동일합니다.

unicode_string.decode('codec')는 기본적으로 의미가 없습니다. 유니코드는 Python, UTF16 또는 UTF32(이미 Python 컴파일 시 결정됨)에서 하나의 유니코드 인코딩만 사용하며 인코딩 변환이 필요하지 않습니다.

참고: 기본 코덱은

import sys

sys.setdefaultencoding('utf-8')과 같이 site-packages 아래의 sitecustomize.py 파일에 지정되어 있습니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.