一、什么是文件操作
一個(gè)完整的程序一般都包括數(shù)據(jù)的存儲(chǔ)和讀取;我們?cè)谇懊鎸?xiě)的程序數(shù)據(jù)都沒(méi)有進(jìn)行實(shí)際的存儲(chǔ),因此python解釋器執(zhí)行完數(shù)據(jù)就消失了
實(shí)際開(kāi)發(fā)中,我們經(jīng)常需要從外部存儲(chǔ)介質(zhì)(硬盤(pán)、光盤(pán)、U盤(pán)等)讀取數(shù)據(jù),或者將程序產(chǎn)生的數(shù)據(jù)存儲(chǔ)到文件中,實(shí)現(xiàn)“持久化”保存
1.1. 文件分類按文件中數(shù)據(jù)組織形式,我們把文件分為文本文件和二進(jìn)制文件兩大類:
文本文件文本文件存儲(chǔ)的是普通“字符”文本,python默認(rèn)為 unicode 字符集,可以使用記事本程序打開(kāi)
二進(jìn)制文件二進(jìn)制文件把數(shù)據(jù)內(nèi)容用“字節(jié)”進(jìn)行存儲(chǔ),無(wú)法用記事本打開(kāi), 必須使用專用的軟件解碼。
常見(jiàn)的有:MP4視頻文件、MP3音頻文件、JPG圖片、doc文檔等等
1.2. 常用編碼在操作文本文件時(shí),經(jīng)常會(huì)操作中文,這時(shí)候就經(jīng)常會(huì)碰到亂碼問(wèn)題。 為了解決中文亂碼問(wèn)題,需要學(xué)習(xí)下各個(gè)編碼之前的問(wèn)題。
常用編碼之間的關(guān)系如下:
ASCII
全稱為 American Standard Code for Information Interchange
,美國(guó)信息交換標(biāo)準(zhǔn)代碼,這是世界上最早最通用的單字節(jié)編碼系統(tǒng),主要用來(lái)顯示現(xiàn)代英語(yǔ)及其他西歐語(yǔ)言
注意事項(xiàng):
ASCII 碼用7位表示,只能表示128個(gè)字符。 只定義了2^7=128個(gè)字符,用7bit即可完全編碼, 而一字節(jié)8bit的容量是256,所以一字節(jié)
ASCII 的編碼最高位總是0
ASCll 碼對(duì)應(yīng)碼表如下: ASCll 碼表
GBK
GBK即漢字內(nèi)碼擴(kuò)展規(guī)范,英文全稱Chinese Internal Code Specification.
GBK編碼標(biāo)準(zhǔn)兼容GB2312,共收錄漢字21003個(gè)、符號(hào)883個(gè),并提供1894個(gè)造字碼位,簡(jiǎn)、繁體字融于一庫(kù)。GBK采用雙字節(jié)表示,總體編碼范圍為8140-FEFE,首字節(jié)在81-FE
之間,尾字節(jié)在40-FE 之間
Unicode
Unicode
編碼設(shè)計(jì)成了固定兩個(gè)字節(jié),所有的字符都用16位2^16=65536表示,包括之前只占8位的英文字符等,所以會(huì)造成空間的浪費(fèi)Unicode 完全重新設(shè)計(jì),不兼容
iso8859-1 ,也不兼容任何其他編碼
UTF-8
對(duì)于英文字母, unicode 也需要兩個(gè)字節(jié)來(lái)表示, 所以 unicode 不便于傳輸和存儲(chǔ)。 因此而產(chǎn)生了 UTF編碼 , UTF-8 全稱是(
8-bit UnicodeTransformation Format )
注意事項(xiàng)
UTF 編碼兼容 iso8859-1 編碼,同時(shí)也可以用來(lái)表示所有語(yǔ)言的字符
UTF 編碼是不定長(zhǎng)編碼,每一個(gè)字符的長(zhǎng)度從1-4個(gè)字節(jié)不等。英文字母都是用一個(gè)字節(jié)表示,而漢字使用三個(gè)字節(jié)
一般項(xiàng)目都會(huì)使用 UTF-8我們之所以傾向于使用UTF-8 , 是因?yàn)槠洳欢ㄩL(zhǎng)編碼可以在節(jié)省內(nèi)存的同時(shí)能夠完全兼容中文
剛進(jìn)入名為人偶懸廊的外圍, 小知便看到了異樣: 自己的僵尸小弟沒(méi)有按照自己的命令繼續(xù)攻略地下城, 而是在地圖外圍漫無(wú)目的徘徊著。
而且不僅僅是自己的僵尸小弟, 甚至還看到了冒險(xiǎn)家, 只不過(guò)他們也是像僵尸一樣, 如機(jī)械般的行動(dòng)軌跡甚至讓小知懷疑他們是否還活著。 為了能夠更近距離的觀察異樣,
小知決定趁機(jī)弄暈一個(gè)冒險(xiǎn)家, 然后自己加裝被控制的冒險(xiǎn)家來(lái)進(jìn)行調(diào)查.
-
程序
+關(guān)注
關(guān)注
117文章
3832瀏覽量
84344 -
python
+關(guān)注
關(guān)注
56文章
4848瀏覽量
88913
發(fā)布評(píng)論請(qǐng)先 登錄
關(guān)于Python的文件操作詳解









Python文件操作教程免費(fèi)下載

python的文件操作教程詳細(xì)說(shuō)明

python的文件操作實(shí)例代碼說(shuō)明

評(píng)論