自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python入門 - 如何在Python中讀寫文件

開發(fā) 后端 Linux 新聞
本教程通過使用非常簡單的示例描述了從文件中讀取內(nèi)容并將內(nèi)容寫入文件的常用方法。Python新手將能夠知道讀取或?qū)懭胛募韬瘮?shù)的用法。

 從文件讀取和寫入文件是任何編程語言的常見需求。任何文件在讀寫之前都需要打開。大多數(shù)編程語言都使用open()方法來打開文件,以便使用文件對象(file object)讀寫??梢允褂貌煌愋偷奈募L問模式作為open()方法的參數(shù),以說明打開文件的目的。這個(gè)參數(shù)是可選的。close()方法用于在完成文件操作后釋放文件對象占用的資源。Python編程可以處理兩種類型的文件。它們是文本文件和二進(jìn)制文件。本教程描述了如何在Python編程中讀寫文本文件。

文件訪問模式:

前面已經(jīng)提到,open()方法中可以使用不同類型的文件訪問模式,本部分將對此進(jìn)行描述。常用的模式如下所述。

模式 用途
t 表示一個(gè)文本文件,是默認(rèn)文件類型。
b 表示一個(gè)二進(jìn)制文件。
r 打開文件進(jìn)行讀取,這是打開任何文件的默認(rèn)模式。
w 打開文件進(jìn)行寫入。
x 如果不存在,它將打開文件進(jìn)行寫入。
a 如果文件存在,它將打開文件并在文件末尾添加內(nèi)容;否則,請創(chuàng)建文件并在文件開頭添加內(nèi)容。
r+ 打開文件進(jìn)行讀寫,并將光標(biāo)置于文件的開頭。如果文件不存在,則會引發(fā)錯(cuò)誤。
w+ 打開文件進(jìn)行讀寫,如果文件已經(jīng)存在,則覆蓋數(shù)據(jù)。
a+ 打開文件以進(jìn)行讀寫,并將光標(biāo)置于現(xiàn)有文件的文件末尾。如果文件不存在,它將創(chuàng)建文件。

方法:

Python中存在許多讀取或?qū)懭胛募姆椒ā1疚脑斒鲎畛S玫姆椒ā?/p>

open():

這個(gè)方法包含兩個(gè)參數(shù)。第一個(gè)參數(shù)是強(qiáng)制性的,用于獲取文件名進(jìn)行讀取或?qū)懭?。第二個(gè)參數(shù)是可選的,用于設(shè)置文件訪問模式。默認(rèn)的文件訪問模式是“rt”。該方法的返回類型是一個(gè)文件對象,用于讀取和寫入文件。

語法:

FileObject = open(“Filename”,”FileMode”)

close():

此方法用于關(guān)閉文件并使它可用于其他目的。調(diào)用此方法后,文件處理對象將不可用。

read():

此方法用于使用文件對象從文件讀取特定數(shù)量的字節(jié)。

readline():

此方法用于使用文件對象從文件讀取特定行。

readlines():

此方法用于讀取使用文件對象用逗號(,)分隔的文件的所有行。

write():

此方法用于使用文件對象將內(nèi)容寫入文件。

讀取文本文件:

創(chuàng)建一個(gè)名為“ linuxmi.txt”的文本文件,其中包含以下內(nèi)容,以在本文的下一部分中使用。

Linux迷

www.linuxmi.com

linuxmi.com

linuxmi

m.linuxmi.com

示例1:使用read()、readline()和readlines()讀取文件

使用以下Python腳本創(chuàng)建一個(gè)名為linuxmi1.py的文件。它將使用read()根據(jù)字節(jié)大小讀取文件,使用readline()從文件中讀取固定數(shù)量的字符,并使用readlines()讀取數(shù)組中文件的所有行。 

  1. # 打開文件進(jìn)行讀取  
  2. FileHandler = open("linuxmi.txt","r")  
  3. # 根據(jù)大小讀取文件內(nèi)容  
  4. print('輸出來自 read() 方法\n',FileHandler.read(2048))  
  5. # 關(guān)閉文件  
  6. FileHandler.close()  
  7. # 打開文件進(jìn)行讀寫  
  8. FileHandler = open("linuxmi.txt","r+")  
  9. # 讀取第三行的文件內(nèi)容  
  10. print('輸出來自 readline() 方法\n',FileHandler.readline(5))  
  11. # 關(guān)閉文件  
  12. FileHandler.close()  
  13. # 打開文件進(jìn)行讀取和附加  
  14. FileHandler = open("linuxmi.txt","r")  
  15. # 打開文件進(jìn)行讀取和附加  
  16. print('輸出來自 readlines() 方法\n',FileHandler.readlines())  
  17. # 關(guān)閉文件  
  18. FileHandler.close() 

輸出:

運(yùn)行腳本后,將顯示以下輸出。

示例2:使用循環(huán)逐行讀取文件

使用以下腳本創(chuàng)建一個(gè)名為linuxmi2.py的文件。它將使用for循環(huán)從文件對象讀(fileObject)取并打印文件的每一行。 

  1. # 打開文件進(jìn)行讀取  
  2. fileObject = open("linuxmi.txt", "r")  
  3. # 逐行讀取文件并在終端中打印  
  4. for line in fileObject:  
  5.   print(line) 

輸出:

運(yùn)行腳本后,將顯示以下輸出。

示例3:通過使用with語句來讀取文件

使用以下腳本創(chuàng)建一個(gè)名為linuxmi3.py的文件。它將在不使用任何文件對象的情況下通過語句讀取文件。 

  1. # 使用with語句讀取文件  
  2. with open("linuxmi.txt") as fhandler:  
  3.   print(fhandler.readlines()) 

輸出:

運(yùn)行腳本后,將顯示以下輸出。

編寫文本文件:

通過定義文件對象或?qū)⑵渑c語句一起使用,可以將內(nèi)容寫入文件中。

示例4:使用文件對象寫入文件(file object)

使用以下腳本創(chuàng)建一個(gè)名為linuxmi.com.py的文件。它將打開一個(gè)用于寫入的文本文件,并使用write()方法寫入三行。 

  1. # 打開文件進(jìn)行寫入  
  2. fileObject = open("www.linuxmi.com.txt", "w")  
  3. #  添加一些文本  
  4. fileObject.write("Linux迷歡迎您\n")  
  5. fileObject.write("我們的網(wǎng)址是www.linuxmi.com\n")  
  6. fileObject.write("手機(jī)站m.linuxmi.com\n")  
  7. # 關(guān)閉文件  
  8. fileObject.close() 

輸出:

運(yùn)行腳本,并檢查是否使用內(nèi)容創(chuàng)建了文件。運(yùn)行腳本并運(yùn)行“ cat”命令后,將顯示以下輸出。

示例5:使用with語句寫入文件

無需定義文件對象就可以將內(nèi)容寫入文件。使用以下腳本創(chuàng)建一個(gè)名為m.linuxmi.com.py的文件。通過使用with語句,它將在文件中寫入兩行。 

  1. # 使用with語句打開文件進(jìn)行寫入  
  2. with open("m.linuxmi.com.txt",'w') as fileObj:  
  3.    fileObj.write("Linux迷為您提供最新的開源資訊\n")  
  4.    fileObj.write("linuxmi.com提供最新最前沿的開源技術(shù)\n") 

輸出:

運(yùn)行腳本和“ cat”命令讀取文件后,將顯示以下輸出。

總結(jié)

本教程通過使用非常簡單的示例描述了從文件中讀取內(nèi)容并將內(nèi)容寫入文件的常用方法。Python新手將能夠知道讀取或?qū)懭胛募韬瘮?shù)的用法。你學(xué)會了嗎? 

 

責(zé)任編輯:龐桂玉 來源: Linux公社
相關(guān)推薦

2021-08-05 10:00:02

Python編程語言

2021-07-09 12:37:31

GoPython編程語言

2022-06-22 09:56:19

PythonMySQL數(shù)據(jù)庫

2024-11-20 10:00:00

Python文件讀寫

2021-07-02 20:37:19

Python代碼SRP

2025-01-21 15:20:14

2020-07-01 08:48:01

Python機(jī)器學(xué)習(xí)工具

2023-09-01 08:19:21

Flask

2010-03-12 16:30:27

Python文件

2024-08-23 09:06:26

2024-11-14 10:00:00

Python繼承

2022-11-09 10:03:39

UbuntuLinux

2021-01-18 17:23:30

代碼調(diào)試VS Code

2016-08-29 21:36:55

nginxWeb緩存

2020-03-25 18:55:11

Python字符串腳本

2019-11-19 11:20:25

Python數(shù)據(jù)結(jié)構(gòu)Windows

2021-07-30 07:57:53

Windows 操作系統(tǒng)微軟

2020-09-15 10:45:06

PythonPyQt5Matplotlib

2021-01-30 17:57:23

Python緩存開發(fā)

2023-06-15 13:01:07

JavaPythonJavaScript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號