日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

字符编码与转码

發(fā)布時間:2025/5/22 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 字符编码与转码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

字符編碼與轉碼

?詳細文章:

?http://www.cnblogs.com/yuanchenqi/articles/5956943.html

?http://www.diveintopython3.net/strings.html

?

1.在python2默認編碼是ASCII, python3里默認是unicode

2.unicode 分為 utf-32(占4個字節(jié)),utf-16(占兩個字節(jié)),utf-8(占1-4個字節(jié)), so utf-16就是現(xiàn)在最常用的unicode版本, 不過在文件里存的還是utf-8,因為utf8省空間

3.在py3中encode,在轉碼的同時還會把string 變成bytes類型,decode在解碼的同時還會把bytes變回string

?

??上圖僅適用于python2

?

在python2中

#-*- encoding:utf-8 -*-import sysprint(sys.getdefaultencoding()) #打印系統(tǒng)默認編碼 s='你好' s_to_unicode=s.decode('utf-8') #先解碼成unicodeprint(s_to_unicode,type(s_to_unicode))s_to_gbk=s_to_unicode.encode('gbk') #再編碼成gbkprint(s_to_gbk)print('你好')#把gbk再轉成utf-8 gbk_to_utf8=s_to_gbk.decode('gbk').encode('utf-8')print(gbk_to_utf8)

?

在python3中默認的字符編碼是unicode-utf8所以不需要decode了

#-*-coding:gb2312 -*- #這個也可以去掉 #默認字符集為gb2312 __author__ = 'Alex Li'import sys print(sys.getdefaultencoding())msg = "我愛北京天安門"
#msg_gb2312 = msg.decode("utf-8").encode("gb2312") #在python2中需要先解碼成unicode再編碼成gb2312

msg_gb2312 = msg.encode("gb2312") #python3中默認就是unicode utf8,不用再decode,喜大普奔

gb2312_to_unicode = msg_gb2312.decode("gb2312") gb2312_to_utf8 = msg_gb2312.decode("gb2312").encode("utf-8")print(msg) print(msg_gb2312) print(gb2312_to_unicode) print(gb2312_to_utf8)

?

轉載于:https://www.cnblogs.com/sunhao96/p/7601506.html

總結

以上是生活随笔為你收集整理的字符编码与转码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。