聯(lián)系我們 - 廣告服務(wù) - 聯(lián)系電話:
您的當(dāng)前位置: > 關(guān)注 > > 正文

【天天速看料】python中rb是什么意思?Python文件讀寫的幾種模式

來源:CSDN 時間:2023-03-06 08:12:35

python中rb含義理解


(資料圖)

Python文件讀寫的幾種模式:

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

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

"r":默認(rèn)值,表示從文件讀取數(shù)據(jù)

"w":表示要向文件寫入數(shù)據(jù),并截斷以前的內(nèi)容

"a":表示要向文件寫入數(shù)據(jù),添加到當(dāng)前內(nèi)容尾部

"r+":表示對文件進(jìn)行可讀寫操作(刪除以前的所有數(shù)據(jù))

"r+a":表示對文件可進(jìn)行讀寫操作(添加到當(dāng)前文件尾部)

"b":表示要讀寫二進(jìn)制數(shù)據(jù)。

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

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

示例:

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

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

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

解決方案:

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

總結(jié):

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

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

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

r是讀取人工書寫的數(shù)據(jù),書寫的時候是什么樣子,讀出來就是什么樣。

rb是讀取二進(jìn)制文件,非人工書寫的數(shù)據(jù)如.jpeg等這些。

另外encoding可以指定解碼格式,utf-8是現(xiàn)在的主流編碼方式,如果沒有指定encoding 的方式那么根據(jù)python版本的不同會有不同的解碼方式,Python3中是utf-8,而python2中是ascii。

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

時間: 2020-06-16

總結(jié) 1."""作用: 可以表示 "多行注釋" ."多行字符串" ."其內(nèi)的單雙引號不轉(zhuǎn)義" 2.r 代表的意思是: raw 3.r 只對其內(nèi)的反斜杠起作用(注意單個 \ 的問題) raw string 有什么用處呢? raw string 就是會自動將反斜杠轉(zhuǎn)義. >>> print("\n") >>> print(r"\n") \n >>> (注:出現(xiàn)了兩個空行是因?yàn)?print() 會自

本文實(shí)例講述了Python中@property的理解和使用.分享給大家供大家參考,具體如下: 重看狗書,看到對User表定義的時候有下面兩行 @property def password(self): raise AttributeError("password is not a readable attribute") @password.setter def password(self, password): self.password_hash = generate_password_ha

本文將帶領(lǐng)大家由淺入深的去窺探一下,這個裝飾器到底是何方神圣,看完本篇,裝飾器就再也不是難點(diǎn)了. 一.什么是裝飾器 網(wǎng)上有人是這么評價裝飾器的,我覺得寫的很有趣,比喻的很形象 每個人都有的內(nèi)褲主要是用來遮羞,但是到了冬天它沒法為我們防風(fēng)御寒,腫木辦? 我們想到的一個辦法就是把內(nèi)褲改造一下,讓它變得更厚更長,這樣一來,它不僅有遮羞功能,還能提供保暖,不過有個問題,這個內(nèi)褲被我們改造成了長褲后,雖然還有遮羞功能,但本質(zhì)上它不再是一條真正的內(nèi)褲了.于是聰明的人們發(fā)明長褲 在不影響內(nèi)褲的前提下,直接把長

Python int() 函數(shù) 描述 int() 函數(shù)用于將一個字符串或數(shù)字轉(zhuǎn)換為整型. 語法 以下是 int() 方法的語法: class int(x, base=10) 參數(shù) x -- 字符串或數(shù)字. base -- 進(jìn)制數(shù),默認(rèn)十進(jìn)制. 返回值 返回整型數(shù)據(jù). 實(shí)例 以下展示了使用 int() 方法的實(shí)例: >>>int() # 不傳入?yún)?shù)時,得到結(jié)果0 0 >>> int(3) 3 >>> int(3.6) 3 >>> int

pow()方法返回xy(x的y次方) 的值 語法 以下是math模塊pow()方法的語法: import math math.pow( x, y ) 內(nèi)置的pow()方法 pow(x, y[, z]) 函數(shù)是計(jì)算x的y次方,如果z在存在,則再對結(jié)果進(jìn)行取模,其結(jié)果等效于pow(x,y) %z 注意:pow() 通過內(nèi)置的方法直接調(diào)用,內(nèi)置方法會把參數(shù)作為整型,而 math 模塊則會把參數(shù)轉(zhuǎn)換為 float. 參數(shù) x -- 數(shù)值表達(dá)式.y -- 數(shù)值表達(dá)式.z -- 數(shù)值表達(dá)式. 返回值 返回

我最近在參與Python字節(jié)碼相關(guān)的工作,想與大家分享一些這方面的經(jīng)驗(yàn).更準(zhǔn)確的說,我正在參與2.6到2.7版本的CPython解釋器字節(jié)碼的工作. Python是一門動態(tài)語言,在命令行工具下運(yùn)行時,本質(zhì)上執(zhí)行了下面的步驟: 當(dāng)?shù)谝淮螆?zhí)行到一段代碼時,這段代碼會被編譯(如,作為一個模塊加載,或者直接執(zhí)行).根據(jù)操作系統(tǒng)的不同,這一步生成后綴名是pyc或者pyo的二進(jìn)制文件. 解釋器讀取二進(jìn)制文件,并依次執(zhí)行指令(opcodes). Python解釋器是基于棧的.要理解數(shù)據(jù)流向,我們需要知道每條指

前言 在Python中變量名規(guī)則與其他大多數(shù)高級語言一樣,都是受C語言影響的,另外變量名是大小寫敏感的. Python是動態(tài)類型語言,也就是說不需要預(yù)先聲明變量類型,變量的類型和值在賦值那一刻被初始化,下面詳細(xì)介紹了Python的變量賦值問題,一起來學(xué)習(xí)學(xué)習(xí)吧. 我們先看一下如下代碼: c = {} def foo(): f = dict(zip(list("abcd"), [1, 2 ,3 ,4])) c.update(f) if __name__ == "__main__

變量 在Python中,存儲一個數(shù)據(jù),需要定義一個變量 number1 = 1 #numbe1就是一個變量,用來保存數(shù)據(jù):1 number2 = 2 #number2也是一個變量,用來保存數(shù)據(jù):2 sum = number1+number2 #sum也是一個變量,用力保存1+2的值 說明: 所謂變量:就是可以改變的量. 程序就是用來處理數(shù)據(jù)的,而變量就是用來存儲數(shù)據(jù)的 python中的變量不需要指明類型,系統(tǒng)會自動識別 內(nèi)容擴(kuò)展: 變量命名 1.下劃線或大小寫字母開頭,后面可跟下劃線.大小寫字母

目前網(wǎng)絡(luò)上大部分博客的結(jié)論都是這樣的: Python不允許程序員選擇采用傳值還是傳 引用.Python參數(shù)傳遞采用的肯定是"傳對象引用"的方式.實(shí)際上,這種方式相當(dāng)于傳值和傳引用的一種綜合.如果函數(shù)收到的是一個可變對象(比如字典 或者列表)的引用,就能修改對象的原始值--相當(dāng)于通過"傳引用"來傳遞對象.如果函數(shù)收到的是一個不可變對象(比如數(shù)字.字符或者元組)的引用,就不能 直接修改原始對象--相當(dāng)于通過"傳值"來傳遞對象. 你可以在很多討論該問題

責(zé)任編輯:

標(biāo)簽:

相關(guān)推薦:

精彩放送:

新聞聚焦
Top