python 문자 인 코딩 에 대한 이해

1.문자 인 코딩 약사:
미국:1963 년 ASCII(127 글자 포함)  바이트
중국:1980 년 GB 2312(한자 7445 개 수록,한자 6763 개 와 기타 기호 682 개 포함)
                 1993 년 GB 13000(한자 20902 개 수록)
                         1995 년 GBK 1.0(한자 21003 개 수록)
                                  2000 년 GB 18030(한자 70244 개 수록)
세계:1991 년 유 니 코드('만국 코드'도 통일 코드 로 보통 2 바이트,복잡 한 한 자 는 4 바이트)
              UTF-8(가 변 길이 문자 인 코딩)
2.python 의 인 코딩 디 코딩 응용
Python 2 의 문자열 을 문자 인 코딩 으로 변환 하 는 과정 은:
바이트 문자열-->decode('원래 문자 인 코딩')-->Unicode 문자열-->encode('새로운 문자 인 코딩')-->바이트 문자열

#!/usr/bin/env python
# -*- coding:utf-8 -*-

utf_8_a = '  '
print(utf_8_a,type(utf_8_a),len(utf_8_a)) #  utf_8_a   、     
unicode_a = utf_8_a.decode('utf-8') # utf_8_a     unicode
print(unicode_a,type(unicode_a),len(unicode_a))
gbk_a = utf_8_a.decode('utf-8').encode('gbk') #       gbk
print(gbk_a,type(gbk_a),len(gbk_a)) #  gbk_a   、     
print(gbk_a.decode('gbk'))
----------------------------------------------------
pytharm(python2.6)    :
('\xe6\xb5\x8b\xe8\xaf\x95', <type 'str'>, 6)
(u'\u6d4b\u8bd5', <type 'unicode'>, 2)
('\xb2\xe2\xca\xd4', <type 'str'>, 4)
  
Python 3 에서 정의 하 는 문자열 은 기본적으로 유 니 코드 입 니 다.따라서 먼저 디 코딩 할 필요 가 없습니다.새로운 문자 인 코딩 으로 직접 인 코딩 할 수 있 습 니 다.
문자열-->encode('새로운 문자 인 코딩')-->바이트 문자열

#!/usr/bin/env python
# -*- coding:utf-8 -*-
 
utf_8_a = '  '
print(utf_8_a,type(utf_8_a),len(utf_8_a)) #  utf_8_a   、     
gbk_a = utf_8_a.encode('gbk')
print(gbk_a.decode('gbk'),type(gbk_a),len(gbk_a))
 --------------------------------------------------------
pycharm(python3.6)    :
   <class 'str'> 2
   <class 'bytes'> 4
이상 의 python 문자 인 코딩 을 바탕 으로 하 는 이 해 는 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 께 참고 가 되 고 저희 도 많이 사랑 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기