一個G等于多少M(fèi)(一個G等于多少M(fèi)B流量)
本節(jié)主要講解以下內(nèi)容:
- python代碼的運(yùn)行方式
- 進(jìn)制
- 計算機(jī)中的單位
- 編碼
- Python代碼的運(yùn)行方式
- 腳本式

- 交互式
- 進(jìn)制
計算機(jī)中底層所有數(shù)據(jù)都是一010101的形式存在(圖片,文本,視頻等)。
進(jìn)制分為:二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制
- 進(jìn)制之間的轉(zhuǎn)換
- 計算機(jī)中的單位
- b(bit), 位
- B(byte),字節(jié)
- KB(Kilobyte),千字節(jié)
- M(Megabyte),兆
- G(Gigabyte),千兆
- T(Terabyte),萬億字節(jié)
- 其他更大單位的 PB/EB/ZB/YB/BB/NB/DB不再贅述。
- 假設(shè)1個漢字需要2個字節(jié)(2B=16位來表示,如:1000101011001100),那么1G流量可以通過網(wǎng)絡(luò)傳輸多少漢字呢?(計算機(jī)傳輸本質(zhì)上也是二進(jìn)制)
- 假設(shè)1個漢字需要2個字節(jié)(2B=16位來表示,如:1000101011001100),那么500G硬盤可以存儲多少個漢字?
- 編碼
編碼:文字和二進(jìn)制之間的一個對照表。
4.1 ASCII編碼
ascii規(guī)定使用1個字節(jié)來表示字母與二進(jìn)制的對應(yīng)關(guān)系。
4.2 gb-2312編碼
gb-2312編碼,由國家信息標(biāo)準(zhǔn)委員會制作(1980年)。
gbk編碼,對gb2312進(jìn)行擴(kuò)展,包含了中日韓等文字(1995年)。
在與二進(jìn)制做對應(yīng)關(guān)系時,由如下邏輯:
- 單字節(jié)表示,用一個字節(jié)表示對應(yīng)關(guān)系。2**8 = 256
- 雙字節(jié)表示,用兩個字節(jié)表示對應(yīng)關(guān)系。2**16 = 65536中可能性。
4.3 Unicode
unicode也被稱為萬國碼,為全球的每個文字都分配了一個碼位(二進(jìn)制表示)。
- ucs2
- ucs4
無論是ucs2和ucs4都有缺點(diǎn):浪費(fèi)空間?
unicode的應(yīng)用:在文件存儲和網(wǎng)絡(luò)傳輸時,不會直接使用unicode,而在內(nèi)存中會unicode。
4.4 utf-8編碼
包含所有文字和二進(jìn)制的對應(yīng)關(guān)系,全球應(yīng)用最為廣泛的一種編碼,本質(zhì)上:utf-8是對unicode的壓縮,用盡量少的二進(jìn)制去與文字進(jìn)行對應(yīng)。
4.5 python相關(guān)的編碼
將一個字符串寫入到一個文件中
本節(jié)總結(jié):本節(jié)的知識點(diǎn)主要以理解為主。
- 計算機(jī)上所有的東西最終都會轉(zhuǎn)換成為二進(jìn)制再去運(yùn)行。
- ascii編碼、unicode字符集、utf-8編碼本質(zhì)上都是字符與二進(jìn)制的關(guān)系。
- ascii,字符和二進(jìn)制的對照表。
- unicode,字符和二進(jìn)制(碼位)的對照表。
- utf-8,對unicode字符集的碼位進(jìn)行壓縮處理,間接也維護(hù)了字符和二進(jìn)制的對照表。
- ucs2和ucs4指的是使用多少個字節(jié)來表示unicode字符集的碼位。
- 目前最廣泛的編碼為:utf-8,他可以表示所有的字符且存儲或網(wǎng)絡(luò)傳輸也不會浪費(fèi)資源(對碼位進(jìn)行壓縮了)。
- 二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制其實(shí)就是進(jìn)位的時機(jī)不同。
- 基于Python實(shí)現(xiàn)二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制之間的轉(zhuǎn)換。
- 一個字節(jié)8位
- 計算機(jī)中常見單位b/B/KB/M/G的關(guān)系。
- 漢字,用gbk編碼需要用2個字節(jié);用utf-8編碼需要用3個字節(jié)。
- 基于Python實(shí)現(xiàn)將字符串轉(zhuǎn)換為字節(jié)(utf-8編碼)
13.基于Python實(shí)現(xiàn)將字符串轉(zhuǎn)換為字節(jié)(gbk編碼)

