Python文件讀寫6大實用方法小結(jié)
Python文件讀寫的6大實用方法涵蓋了從基本讀取到高級操作的不同場景。以下是這些方法的具體介紹:
一、使用open函數(shù)讀取文件
這是Python中讀取文件最基本的方式。使用open
函數(shù)以只讀模式(‘r’)打開文件,并指定文件編碼(如’utf-8’)。然后,可以使用文件對象的read
方法一次性讀取整個文件內(nèi)容。
with open('example.txt', 'r', encoding='utf-8') as file: content = file.read() print(content)
二、按行讀取文件
對于大文件,一次性讀取全部內(nèi)容可能會消耗大量內(nèi)存。因此,按行讀取是一個更好的選擇。使用for
循環(huán)逐行讀取文件內(nèi)容,并使用strip
方法去除每行末尾的換行符。
with open('example.txt', 'r', encoding='utf-8') as file: for line in file: print(line.strip())
三、寫入文件
使用open
函數(shù)以寫入模式(‘w’)或追加模式(‘a’)打開文件。然后,可以使用文件對象的write
方法將字符串寫入文件。在’w’模式下,如果文件已存在,其內(nèi)容會被清空;在’a’模式下,新內(nèi)容會被追加到文件末尾。
# 寫入文件 with open('output.txt', 'w', encoding='utf-8') as file: file.write('Hello, Python!\n') file.write('Welcome to file operations.\n') # 追加內(nèi)容到文件 with open('output.txt', 'a', encoding='utf-8') as file: file.write('\nGoodbye, Python!')
四、使用readlines讀取所有行
readlines
方法會讀取文件中的所有行,并返回一個包含每行內(nèi)容的列表。每個列表元素代表文件中的一行。
with open('example.txt', 'r', encoding='utf-8') as file: lines = file.readlines() for line in lines: print(line.strip())
五、使用writelines寫入多行內(nèi)容
writelines
方法接受一個字符串列表作為參數(shù),并將每個字符串寫入文件作為一行。這對于需要一次性寫入多行內(nèi)容的場景非常有用。
lines_to_write = ['First line.\n', 'Second line.\n', 'Third line.\n'] with open('output.txt', 'w', encoding='utf-8') as file: file.writelines(lines_to_write)
六、使用特定模塊處理特定格式文件
- 處理CSV文件:使用Python的
csv
模塊可以方便地讀寫CSV文件。通過創(chuàng)建csv.writer
對象來寫入CSV文件,通過創(chuàng)建csv.reader
對象來讀取CSV文件。
import csv # 寫入CSV文件 with open('data.csv', 'w', newline='', encoding='utf-8') as file: writer = csv.writer(file) writer.writerow(['Name', 'Age', 'City']) writer.writerows([['Alice', 30, 'New York'], ['Bob', 25, 'Los Angeles']]) # 讀取CSV文件 with open('data.csv', 'r', encoding='utf-8') as file: reader = csv.reader(file) for row in reader: print(row)
- 處理JSON文件:使用Python的
json
模塊可以方便地進行JSON數(shù)據(jù)的序列化和反序列化。通過json.dump
方法將Python對象序列化為JSON格式并寫入文件,通過json.load
方法從文件中反序列化JSON數(shù)據(jù)。
import json # 序列化對象并寫入JSON文件 data = {'name': 'Alice', 'age': 30, 'city': 'New York'} with open('data.json', 'w', encoding='utf-8') as file: json.dump(data, file, ensure_ascii=False, indent=4) # 從JSON文件中反序列化對象 with open('data.json', 'r', encoding='utf-8') as file: loaded_data = json.load(file) print(loaded_data)
以上這些方法涵蓋了Python文件讀寫的常見場景,從基本的文件讀取和寫入到處理特定格式的文件,都提供了實用的解決方案。
到此這篇關(guān)于Python文件讀寫6大實用方法小結(jié)的文章就介紹到這了,更多相關(guān)Python文件讀寫方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python爬取數(shù)據(jù)保存為Json格式的代碼示例
今天小編就為大家分享一篇關(guān)于Python爬取數(shù)據(jù)保存為Json格式的代碼示例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-04-04Django Session和Cookie分別實現(xiàn)記住用戶登錄狀態(tài)操作
這篇文章主要介紹了Django Session和Cookie分別實現(xiàn)記住用戶登錄狀態(tài)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07詳解Python 中sys.stdin.readline()的用法
這篇文章主要介紹了Python 中sys.stdin.readline()的用法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09Python提取Linux內(nèi)核源代碼的目錄結(jié)構(gòu)實現(xiàn)方法
下面小編就為大家?guī)硪黄狿ython提取Linux內(nèi)核源代碼的目錄結(jié)構(gòu)實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-06-06Python標(biāo)準庫06之子進程 (subprocess包) 詳解
本篇文章主要介紹了Python標(biāo)準庫06之子進程 (subprocess包) 詳解,具有一定的參考價值,有興趣的同學(xué)可以了解一下。2016-12-12python中使用numpy包的向量矩陣相乘np.dot和np.matmul實現(xiàn)
本文主要介紹了python中使用numpy包的向量矩陣相乘np.dot和np.matmul實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02