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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

常用编码与为何要encode和decode

發(fā)布時(shí)間:2023/12/16 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 常用编码与为何要encode和decode 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

(小拓展):

(一)ASCII 碼

(二)Unicode 碼

(三)UTF-8 碼

(四)總結(jié)與encode、decode


(小拓展):

下面是每個(gè)字符對(duì)應(yīng)的編號(hào),字符0~9對(duì)應(yīng)編號(hào)48~57,就是說(shuō)ASCII碼全是字符

我們鍵盤上每個(gè)鍵都對(duì)應(yīng)一個(gè)ascii碼,這也就是為什么python中input('請(qǐng)輸入一個(gè)數(shù)')得到的是字符,我們還得把它轉(zhuǎn)換成int的原因了


(一)ASCII 碼

ASCII 碼 表示 127 個(gè)英文字符

ASCII 碼最先出現(xiàn),最初只適合英語(yǔ)

隨著計(jì)算機(jī)普及,各國(guó)家語(yǔ)言不同,文字多少更是不同,127個(gè)根本不夠用。各國(guó)都要為自己的語(yǔ)言編碼。

中國(guó)自己的編碼是gbk,每個(gè)中文需要使用兩個(gè)字節(jié)來(lái)編碼,中文編碼的規(guī)則 —— GB2312? (都是常用漢字),比如高考報(bào)名時(shí)有的學(xué)生姓名輸入是亂碼,就是因?yàn)榻逃坑玫腉B2312,而他的名字中有個(gè)太偏僻的字。


由于不同國(guó)家有不同的編碼規(guī)則,如日本,韓國(guó)都使用各自國(guó)家的編碼規(guī)則,在多語(yǔ)言
混用的場(chǎng)合會(huì)出現(xiàn)混亂。怎么解決?


(二)Unicode 碼


Unicode 用來(lái)把所有語(yǔ)言都統(tǒng)一到一套編碼里,這樣就不會(huì)再有亂碼問(wèn)題了。

Unicode通常用兩個(gè)字節(jié)編碼(有的也用四個(gè)字節(jié)),而 ASCII 碼通常用一個(gè)字節(jié)字節(jié)。ASCII 碼轉(zhuǎn)
換成 Unicode 在前面一個(gè)字節(jié)補(bǔ) 0

Unicode碼雖然全面,但是用起來(lái)笨重,比如說(shuō)我就是想傳個(gè)1到服務(wù)器,你還要給我用兩個(gè)字節(jié)編碼么?傳額外15個(gè)0?


(三)UTF-8 碼

UTF-8 把unicode進(jìn)行優(yōu)化,減小了硬盤存儲(chǔ)空間浪費(fèi)與傳輸效率低下

不過(guò)在內(nèi)存中都要轉(zhuǎn)換成unicode


UTF-8 編碼把一個(gè) Unicode 字符根據(jù)不同的數(shù)字大小編碼成 1-6 個(gè)字節(jié),常用的英文字
母被編碼成 1 個(gè)字節(jié),漢字通常是 3 個(gè)字節(jié),只有很生僻的字符才會(huì)被編碼成 4-6 個(gè)字節(jié)。


如果你要傳輸?shù)奈谋景罅坑⑽淖址?#xff0c;用 UTF-8 編碼就能節(jié)省空間。


UTF-8 的一個(gè)好處在于,原有的 ASCII 的編碼可以在 UTF-8 下繼續(xù)工作。


(四)總結(jié)與encode、decode


搞清楚了 ASCII、Unicode 和 UTF-8 的關(guān)系,我們就可以總結(jié)一下現(xiàn)在計(jì)算機(jī)系統(tǒng)通用
的字符編碼工作方式:


在計(jì)算機(jī)內(nèi)存中,統(tǒng)一使用 Unicode 編碼,當(dāng)需要保存到硬盤或者需要傳輸?shù)臅r(shí)候,
就轉(zhuǎn)換為 UTF-8 編碼。


用記事本編輯的時(shí)候,從文件讀取的 UTF-8 字符被轉(zhuǎn)換為 Unicode 字符到內(nèi)存里,編
輯完成后,保存的時(shí)候再把 Unicode 轉(zhuǎn)換為 UTF-8 保存到文件:rw-file-utf-8


瀏覽網(wǎng)頁(yè)的時(shí)候,服務(wù)器會(huì)把動(dòng)態(tài)生成的 Unicode 內(nèi)容轉(zhuǎn)換為 UTF-8 再傳輸?shù)綖g覽器:
web-utf-8
所以你看到很多網(wǎng)頁(yè)的源碼上會(huì)有類似的信息,表示該網(wǎng)頁(yè)正是用的 UTF-8 編碼。


首先要搞清楚,字符串在 Python 內(nèi)部的表示是 unicode 編碼,因此,在做編碼轉(zhuǎn)換時(shí),
通常需要以 unicode 作為中間編碼,即先將其他編碼的字符串解碼(decode)成 unicode,
再?gòu)?unicode 編碼(encode)成另一種編碼。
1.decode:其它碼-->unicode
decode 的作用是將其他編碼的字符串轉(zhuǎn)換成 unicode 編碼,如 str1.decode(‘gb2312’),表
示將 gb2312 編碼的字符串轉(zhuǎn)換成 unicode 編碼。
2.encode:unicode-->其它碼
encode 的作用是將 unicode 編碼轉(zhuǎn)換成其他編碼的字符串,如 str2.encode(‘gb2312’),表
示將 unicode 編碼的字符串轉(zhuǎn)換成 gb2312 編碼。

總結(jié)

以上是生活随笔為你收集整理的常用编码与为何要encode和decode的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久2019| 午夜寂寞院| 亚洲精品久久久久久久久 | 日韩视频中文字幕 | hitomi一区二区三区精品 | 波多野吉衣一区 | 91极品蜜桃臀 | 久久小视频 | 性一交一黄一片 | 成人人伦一区二区三区 | 日本性生活一级片 | 韩国三级视频在线 | 国产资源站 | 精品一区二区三区不卡 | 丁香色欲久久久久久综合网 | 在线观看免费毛片 | 欧美在线免费观看视频 | 亚洲国产精品成人久久蜜臀 | 91系列在线观看 | 91色漫 | 玖玖色在线| 久久久在线免费观看 | 国产毛片久久 | 久操视频在线观看 | 亚洲国产精品成人综合久久久 | 国产日韩欧美在线观看视频 | 成人免费区一区二区三区 | 午夜视频1000 | 日韩一区二区在线免费观看 | 亚洲一区免费视频 | 国产精品黄色在线观看 | 在线视频久久 | 日韩久久久久久久久久久 | 特级毛片www| 法国性xxxx精品hd | 国产精品.xx视频.xxtv | 久久久久成人精品无码 | 欧美一区二区三区四区五区六区 | 久久久男人的天堂 | 综合色99| 天天爽夜夜爽夜夜爽精品 | 少妇无内裤下蹲露大唇视频 | 日本女优在线看 | av手机 | 韩国av中文字幕 | 狼友视频国产精品 | 99视频久久 | 四虎国产成人精品免费一女五男 | 强开乳罩摸双乳吃奶羞羞www | 222aaa| 明星双性精跪趴灌满h | 天堂av网手机版 | 超碰黑丝 | 99精品欧美一区二区三区综合在线 | 久久bb| 日韩电影一区二区在线观看 | 国产视频一二区 | 老熟妇一区二区三区 | 欧美在线视频网站 | 成人久久久精品国产乱码一区二区 | 国产一区二区视频在线播放 | 国产三级播放 | 久久精品国产亚洲AV熟女 | 中文字幕乱码中文乱码b站 国产一区二区三区在线观看视频 | 每日在线更新av | 欧美黄页 | 久久成人在线 | 视频区小说区 | 色资源av| 日韩免费观看视频 | 又黄又免费的视频 | 九九久久综合 | 久久久免费高清视频 | 清纯唯美亚洲综合 | 永久免费的网站入口 | 欧美xo影院 | 国产精品一区免费观看 | 亚洲成人av在线播放 | 综合久久中文字幕 | 欧美一区三区三区高中清蜜桃 | 日韩av手机在线免费观看 | 97色婷婷 | 久久久免费精品 | 狠狠综合网 | 钰慧的mv视频在线观看 | 欧美男女啪啪 | 免费观看黄色的网站 | 国产sm在线 | 欧美丰满老熟妇xxxxx性 | 亚洲激情网址 | 国产成人在线免费 | gai免费观看网站外网 | 国产精品毛片一区二区在线看 | 亚洲精品无码久久 | 美女涩涩网站 | 色屁屁一区二区三区视频 | 浓精h攵女乱爱av | 人妻妺妺窝人体色www聚色窝 | 免费观看h片 |