r+模式與a+模式打開有什么區(qū)別?w與w+打開又有什么區(qū)別
a+和r+打開,可讀可寫,寫的時(shí)候也是在文段末尾添加,它們兩個(gè)有什么區(qū)別?
w+雖然有讀權(quán)限,但是打開的時(shí)候內(nèi)容就被清空了,讀的意義在哪里?跟w沒區(qū)別了耶。
是我哪里理解得不好
a+和r+打開,可讀可寫,寫的時(shí)候也是在文段末尾添加,它們兩個(gè)有什么區(qū)別?
w+雖然有讀權(quán)限,但是打開的時(shí)候內(nèi)容就被清空了,讀的意義在哪里?跟w沒區(qū)別了耶。
是我哪里理解得不好
2016-01-12
舉報(bào)
2016-12-25
如果你僅僅是讀:r+就可以讀取到原文件內(nèi)容(使用read);a+是追加模式,讀的時(shí)候是將指針已經(jīng)放在文件末尾了,所以讀取到的文件是空的。
如果你僅僅是寫:r+是從頭開始寫的,你寫了多少就會覆蓋原文件多少;a+因?yàn)橹羔樢呀?jīng)放在文件末尾了,所以你寫額時(shí)候自然就是追加在后面的。
如果你是先讀在寫:這樣就有點(diǎn)麻煩了。r+當(dāng)你使用read讀完之后再使用write寫的時(shí)候,指針已經(jīng)在文件末尾了,所以你再寫的時(shí)候就感覺是追加在末尾似的。a+因?yàn)槟阆茸x的時(shí)候指針已經(jīng)在末尾了你自然就讀不到任何內(nèi)容。
至于你說的w和w+我的理解這是這樣的:如果你使用w打開文件你讀的時(shí)候是會報(bào)錯(cuò)的;而使用w+的時(shí)候雖然文件被清除,但是是有讀權(quán)限的。至于擁有讀的權(quán)限有什么作用還不是很了解。
2016-01-14
a+可讀可寫,追加內(nèi)容;
r+可讀可寫,覆蓋內(nèi)容;
w+可讀可寫,情況內(nèi)容,但是它的意義是可以邊寫邊讀啊,w只能寫,不能讀。
你可以直接執(zhí)行下面的例子:
f=open('testPythonFile.txt','w+')
f.write('1234567890-')
f.flush()
f.seek(0)
str= f.readline() #寫完了,我還能讀取
print str
f.close();