欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中rb含義理解

 更新時(shí)間:2020年06月18日 14:41:08   作者:silencement  
在本篇文章里小編給大家整理的是關(guān)于python中rb含義及用法內(nèi)容,需要的朋友們可以學(xué)習(xí)下。

Python文件讀寫的幾種模式:

r,rb,w,wb 那么在讀寫文件時(shí),有無b標(biāo)識(shí)的的主要區(qū)別在哪里呢?

文件使用方式標(biāo)識(shí)

  • 'r':默認(rèn)值,表示從文件讀取數(shù)據(jù)
  • 'w':表示要向文件寫入數(shù)據(jù),并截?cái)嘁郧暗膬?nèi)容
  • 'a':表示要向文件寫入數(shù)據(jù),添加到當(dāng)前內(nèi)容尾部
  • 'r+':表示對(duì)文件進(jìn)行可讀寫操作(刪除以前的所有數(shù)據(jù))
  • 'r+a':表示對(duì)文件可進(jìn)行讀寫操作(添加到當(dāng)前文件尾部)
  • 'b':表示要讀寫二進(jìn)制數(shù)據(jù)。

讀文件 進(jìn)行讀文件操作時(shí),直到讀到文檔結(jié)束符(EOF)才算讀取到文件最后,Python會(huì)認(rèn)為字節(jié)\x1A(26)轉(zhuǎn)換成的字符為文檔結(jié)束符(EOF),

故使用'r'進(jìn)行讀取二進(jìn)制文件時(shí),可能會(huì)出現(xiàn)文檔讀取不全的現(xiàn)象。

示例:

二進(jìn)制文件中存在如下從低位向高位排列的數(shù)據(jù):7F 32 1A 2F 3D 2C 12 2E 76

如果使用'r'進(jìn)行讀取,則讀到第三個(gè)字節(jié),即認(rèn)為文件結(jié)束。

如果使用'rb'按照二進(jìn)制位進(jìn)行讀取的,不會(huì)將讀取的字節(jié)轉(zhuǎn)換成字符,從而避免了上面的錯(cuò)誤。

解決方案:

二進(jìn)制文件就用二進(jìn)制方法讀取'rb'

總結(jié):

使用'r'的時(shí)候,如果碰到'0x1A',就視為文件結(jié)束,就是EOF。使用'rb'則不存在這個(gè)問題,

即:如果你用二進(jìn)制寫入再用文件讀出的話,如果其中存在'0x1A',就只會(huì)讀出文件的一部分,使用'rb'會(huì)一直讀取文件末尾。

知識(shí)點(diǎn)擴(kuò)展:

  1. r是讀取人工書寫的數(shù)據(jù),書寫的時(shí)候是什么樣子,讀出來就是什么樣。
  2. rb是讀取二進(jìn)制文件,非人工書寫的數(shù)據(jù)如.jpeg等這些。
  3. 另外encoding可以指定解碼格式,utf-8是現(xiàn)在的主流編碼方式,如果沒有指定encoding 的方式那么根據(jù)python版本的不同會(huì)有不同的解碼方式,Python3中是utf-8,而python2中是ascii。

到此這篇關(guān)于python中rb含義理解的文章就介紹到這了,更多相關(guān)python中rb是什么意思內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論