亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python文件操作方法詳解

 更新時(shí)間:2020年02月09日 14:18:09   作者:羅阿紅  
這篇文章主要介紹了Python文件操作方法詳解,需要的朋友可以參考下

本節(jié)內(nèi)容

1、文件常用操作匯總

2、打開文件

3、操作文件

4、關(guān)閉文件

一、文件常用操作匯總

二、打開文件

1、普通打開模式

  • r,英文:read,只讀模式(默認(rèn))
  • w,英文:write,只寫模式(不可讀,不存在則創(chuàng)建新文件,存在則刪除內(nèi)容)
  • a,英文:append,追加模式(不可讀,不存在則創(chuàng)建,存在則只追加內(nèi)容

2、同時(shí)讀寫模式

  • r+,可讀寫文件(可讀;可寫;可追加,不存在文件則報(bào)錯(cuò))
  • w+,可寫讀文件(可讀,可寫,創(chuàng)建新文件)
  • a+,可追加和讀文件(可讀,可追加,不存在則創(chuàng)建)

3、二進(jìn)制打開模式

  • rb,二進(jìn)制讀
  • wb,二進(jìn)制寫
  • ab,二進(jìn)制追加

三、操作文件 

文件內(nèi)容:

Somehow, it seems the love I knew was always the most destructive kind
不知為何,我經(jīng)歷的愛情總是最具毀滅性的的那種
Yesterday when I was young
昨日當(dāng)我年少輕狂

 1、read()

當(dāng)read()函數(shù)中傳入整數(shù)(int)參數(shù),則讀取相應(yīng)的字符數(shù),如果不填寫,則默認(rèn)讀取所有字符

f = open("yesterday2",'r',encoding="utf-8")
#默認(rèn)讀取全部字符
print(f.read())
f.close()
#輸出
Somehow, it seems the love I knew was always the most destructive kind
不知為何,我經(jīng)歷的愛情總是最具毀滅性的的那種
Yesterday when I was young
昨日當(dāng)我年少輕狂
 
f = open("yesterday2",'r',encoding="utf-8")
#只讀取10個(gè)字符
print(f.read(10))
f.close()
#輸出
Somehow, i

注:只有當(dāng)文件有讀權(quán)限時(shí),才可以操作這個(gè)函數(shù)

2、獲取文件句柄所在的指針的位置tell()

獲取文件句柄所在的指針的位置

f = open("yesterday2",'r',encoding="utf-8")
print(f.read(10))
#獲取指針位置
print(f.tell())
f.close()
#輸出
Somehow, i #讀取的內(nèi)容
10 #指針位置

 3、設(shè)置文件句柄所在的指針位置seek()

f = open("yesterday2",'r',encoding="utf-8")
print(f.read(10))
#設(shè)置之前的指針位置
print(f.tell())
f.seek(0)
#設(shè)置之后的指針位置
print(f.tell())
f.close()
#輸出
Somehow, i #讀取文件的內(nèi)容
10 #設(shè)置之前的指針位置
0 #設(shè)置之后的指針位置

 4、打印文件的編碼encoding

f = open("yesterday2",'r',encoding="utf-8")
print(f.encoding)
f.close()
#輸出
utf-8

 5、fileno()

返回文件句柄在內(nèi)存中的編號(hào)

f = open("yesterday2",'r',encoding="utf-8")
print(f.fileno())
f.close()
#輸出
3

 6、name

返回文件名

f = open("yesterday2",'r',encoding="utf-8")
print(f.name)
f.close()
#輸出
yesterday2

 7、isatty()

判斷是否是一個(gè)終端設(shè)備(比如:打印機(jī)之類的)

f = open("yesterday2",'r',encoding="utf-8")
print(f.isatty())
f.close()
#輸出
False #表示不是一個(gè)終端設(shè)備

 8、seekable()

 不是所有的文件都可以移動(dòng)光標(biāo),比如tty文件,可以移動(dòng)的,返回True

f = open("yesterday2",'r',encoding="utf-8")
print(f.seekable())
f.close()
#輸出
True

 9、readable()

文件是否可讀

f = open("yesterday2",'r',encoding="utf-8")
print(f.readable())
f.close()
#輸出
True

10、writeable()

文件是否可寫

f = open("yesterday2",'r',encoding="utf-8")
print(f.writable())
f.close()
#輸出
False #文件不可寫

11、flush()

寫數(shù)據(jù)時(shí),寫的數(shù)據(jù)不想存內(nèi)存中緩存中,而是直接存到磁盤上,需要強(qiáng)制刷新

>>> f = open("yesterday2","w",encoding="utf-8")
#這時(shí)'hello word'在緩存中
>>> f.write("hello word")
#強(qiáng)刷到磁盤上
>>> f.flush()

這個(gè)怎么實(shí)驗(yàn)?zāi)??在cmd命令行中,cd到你文件所在的路徑下,然后輸入python,在Python命令行中輸入上面代碼

①cd d:\PycharmProjects\pyhomework\day3下(因?yàn)槲业谋粶y(cè)文件在這個(gè)文件夾下)

②在這個(gè)目錄下輸入Python命令行,然后進(jìn)行測(cè)試

③強(qiáng)制刷新之前

 ④執(zhí)行強(qiáng)刷命令之后

 

⑤強(qiáng)刷后文件中的內(nèi)容變化

注:以寫的模式打開文件,寫完一行,默認(rèn)它是寫到硬盤上去的,但是其實(shí)它不一定寫到硬盤上去了。當(dāng)你剛寫完一行,如果此時(shí)斷電,有可能,你這行就沒(méi)有寫進(jìn)去,因?yàn)檫@一樣還在內(nèi)存的緩存中(內(nèi)存中的緩存機(jī)制),所以你有不想存緩存,所以就要強(qiáng)制刷新。那一般在什么情況下用吶?比如:存錢

12、closed

判斷文件是否關(guān)閉

f = open("yesterday2","r",encoding="utf-8")
f.read()
print(f.closed)
#輸出
False

13、truncate(截取字符的數(shù))

截取文件中的字符串,打開文件模式一定是追加模式(a),不能是寫(w)和讀(r)模式

#沒(méi)有指針
f = open("yesterday2","a",encoding="utf-8")
f.truncate(10)
f.close()
#截取結(jié)果
Somehow, i
 
#有指針
f = open("yesterday2","a",encoding="utf-8")
f.seek(5)
f.truncate(10)
f.close()
#截取結(jié)果
Somehow, i

 說(shuō)明truncate截取文件中的字段,并不受指針(seek)所在位置影響。

14、write()

寫入文件內(nèi)容

f = open("yesterday2","w",encoding="utf-8")
f.write("Somehow, it seems the love I knew was always the most destructive kind")
f.close()

 注:寫功能只有當(dāng)打開文件模式是寫(w)或者追加(a)才可操作。

四、關(guān)閉文件

f.close()

更多關(guān)于Python文件操作方法請(qǐng)查看下面的相關(guān)文章

相關(guān)文章

  • Python中字符串,列表與字典的常用拼接方法總結(jié)

    Python中字符串,列表與字典的常用拼接方法總結(jié)

    有時(shí)在數(shù)據(jù)處理時(shí),需要對(duì)數(shù)據(jù)進(jìn)行拼接處理,比如字符串的拼接、列表的拼接等,本文主要是介紹了字符串、列表、字典常用的拼接方法,希望對(duì)大家有所幫助
    2024-02-02
  • Python的Tkinter點(diǎn)擊按鈕觸發(fā)事件的例子

    Python的Tkinter點(diǎn)擊按鈕觸發(fā)事件的例子

    今天小編就為大家分享一篇Python的Tkinter點(diǎn)擊按鈕觸發(fā)事件的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • python自動(dòng)發(fā)送測(cè)試報(bào)告郵件功能的實(shí)現(xiàn)

    python自動(dòng)發(fā)送測(cè)試報(bào)告郵件功能的實(shí)現(xiàn)

    這篇文章主要介紹了python自動(dòng)發(fā)測(cè)試報(bào)告郵件功能的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • python爬蟲的工作原理

    python爬蟲的工作原理

    本文主要介紹了python爬蟲的工作原理,具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-03-03
  • 構(gòu)建?Python?命令行參數(shù)的?4?種常見方式

    構(gòu)建?Python?命令行參數(shù)的?4?種常見方式

    這篇文章主要介紹了構(gòu)建?Python?命令行參數(shù)的?4?種常見方式,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-06-06
  • 何用Python實(shí)現(xiàn)一個(gè) “系統(tǒng)聲音” 的實(shí)時(shí)律動(dòng)掛件

    何用Python實(shí)現(xiàn)一個(gè) “系統(tǒng)聲音” 的實(shí)時(shí)律動(dòng)掛件

    這篇文章將給大家介紹了如何用 Python 實(shí)現(xiàn)一個(gè) “系統(tǒng)聲音” 的實(shí)時(shí)律動(dòng)掛件,采集后直接實(shí)時(shí)地在電腦上繪制波形動(dòng)畫,主要是用來(lái)作為 FL Studio 播放時(shí)的一個(gè)桌面小掛件,文中有相關(guān)的代碼示例供大家參考,需要的朋友可以參考下
    2024-01-01
  • 最新評(píng)論