日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

你还在为文件读写而烦恼?Python已经轻松帮你解决了(建议收藏)

發布時間:2024/9/30 python 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 你还在为文件读写而烦恼?Python已经轻松帮你解决了(建议收藏) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


不管是Java還是Python,都有相關文件讀寫操作!

很多小伙伴們都困擾于讀寫文件的各種模式(如閱讀、寫入、追加等),以及搞不清open、read、readline、readlines、write等方法的使用。

寫這篇文章就是要告訴伙伴們Python文件讀寫的方式!

學習python中有什么不懂的地方,小編這里推薦加小編的python學習群:895,817, 687
有任何不懂的都可以在里面交流,還有很好的視頻教程pdf學習資料,大家一起學習交流!

open函數

如果你想用python讀取文件(如txt、csv等),第一步要用open函數打開文件。open()是python的內置函數,它會返回一個文件對象,這個文件對象擁有read、readline、write、close等方法。

open函數有兩個參數:

  • open(‘file’,‘mode’)

參數解釋

  • file:需要打開的文件路徑
  • mode(可選):打開文件的模式,如只讀、追加、寫入等

mode常用的模式:

  • r:表示文件只能讀取
  • w:表示文件只能寫入
  • a:表示打開文件,在原有內容的基礎上追加內容,在末尾寫入
  • w+:表示可以對文件進行讀寫雙重操作

mode參數可以省略不填,默認為r模式mode參數還可以指定以什么樣的編碼方式讀寫文本,默認情況下open是以文本形式打開文件的,比如上面的四種mode模式。

當你需要以字節(二進制)形式讀寫文件時,只需要在mode參數中追加’b’即可:

  • rb:以二進制格式打開一個文件,用于只讀
  • wb:以二進制格式打開一個文件,用于只寫
  • ab:以二進制格式打開一個文件,用于追加
  • wb+:以二進制格式打開一個文件,用于讀寫

    當你在默認模式下讀取文本文件時(二進制文件不可以),文件中的換行符會轉換為’\n’形式。


相反,在默認模式下寫入文件時,文本中的’\n’會轉換為換行符。

也就是說,你讀取的txt文本,其中換行符會以’\n’形式出現,寫入txt文本時,文本中的’\n’會變成換行指令。

with 關鍵字

在打開文件時,很多人通常直接用open(‘file’),這樣并不酷。最好使用 with 關鍵字。優點是當子句體結束后文件會正確關閉,即使在某個時刻引發了異常。

with open(‘workfile’) as f:
… read_data = f.read()
f.closed
True

close()方法

打開文件并處理完畢后,需要關閉文件,這里用到close方法。

f.close() 用來關閉文件并立即釋放它使用的所有系統資源。如果你沒有顯式地關閉文件,Python的垃圾回收器最終將銷毀該對象并為你關閉打開的文件,但這個文件可能會保持打開狀態一段時間。

應該要養成使用close()的習慣。

使用方法很簡單:

f = open(file) # 打開文件
f.close() # 關閉文件

read()方法

當使用open函數打開文件后,就可以使用該文件對象的各種方法了,read就是其中一種。

read()會讀取一些數據并將其作為字符串(在文本模式下)或字節對象(在二進制模式下)返回。

read方法有一個參數:

f.read(size) # f為文件對象

參數size(可選)為數字,表示從已打開文件中讀取的字節計數,默認情況下為讀取全部。

假設有一個文件sample1.txt,內容如下:

This is python big data analysis!

現在讀取該文件:

with open('sample1.txt') as f: content = f.read()print(content)f.close()

輸出:


readline()方法

readline方法從文件中讀取整行,包括換行符’\n’。

換行符(\n)留在字符串的末尾,如果文件不以換行符結尾,則在文件的最后一行省略,這使得返回值明確無誤。

如果 f.readline() 返回一個空的字符串,則表示已經到達了文件末尾,而空行使用 ‘\n’ 表示,該字符串只包含一個換行符。

f.readline()有一個參數:

f.readline(size)
參數size表示從文件讀取的字節數。

假設有一個文件sample2.txt,共三行,內容如下:

hello,my friends! This is python big data analysis, let's study.

我要用readline函數讀取該文件:

with open('a.txt') as f:print(f.readline())print(f.readline(5))f.close()

輸出:

readline方法會記住上一個readline函數讀取的位置,接著讀取下一行。

所以當你需要遍歷文件每一行的時候,不妨使用readline方法吧!

readlines方法

readlines方法和readline方法長得像,但功能不一樣,前面說過readline方法只讀取一行,readlines方法則是讀取所有行,返回的是所有行組成的列表。

readlines方法沒有參數,使用更加簡單。依舊以sample2.txt為例:

with open('a.txt') as f:print(f.readlines())f.close()

輸出:

write方法

write方法顧名思義,就是將字符串寫入到文件里。

它只有一個參數:

f.write([str]) # f為文件對象

參數[str]代表要寫入的字符串

使用起來也很簡單,比如將下面字符串(注意里面的轉行符’\n’)

'hello,my friends!\nthis is python big data analysis'

寫入到文件sample3.txt里。

with open('sample3.txt','w') as f:f.write('hello,my friends!\nthis is python big data analysis')f.close()

輸出:

結語

本文講解了python文本讀寫open、close、read、readline、readlines、write函數方法的使用,你會用了嗎?

總結

以上是生活随笔為你收集整理的你还在为文件读写而烦恼?Python已经轻松帮你解决了(建议收藏)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。