Python文件讀寫6大實(shí)用方法小結(jié)
Python文件讀寫的6大實(shí)用方法涵蓋了從基本讀取到高級操作的不同場景。以下是這些方法的具體介紹:
一、使用open函數(shù)讀取文件
這是Python中讀取文件最基本的方式。使用open函數(shù)以只讀模式(‘r’)打開文件,并指定文件編碼(如’utf-8’)。然后,可以使用文件對象的read方法一次性讀取整個(gè)文件內(nèi)容。
with open('example.txt', 'r', encoding='utf-8') as file:
content = file.read()
print(content)
二、按行讀取文件
對于大文件,一次性讀取全部內(nèi)容可能會消耗大量內(nèi)存。因此,按行讀取是一個(gè)更好的選擇。使用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方法會讀取文件中的所有行,并返回一個(gè)包含每行內(nèi)容的列表。每個(gè)列表元素代表文件中的一行。
with open('example.txt', 'r', encoding='utf-8') as file:
lines = file.readlines()
for line in lines:
print(line.strip())
五、使用writelines寫入多行內(nèi)容
writelines方法接受一個(gè)字符串列表作為參數(shù),并將每個(gè)字符串寫入文件作為一行。這對于需要一次性寫入多行內(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模塊可以方便地進(jìn)行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文件讀寫的常見場景,從基本的文件讀取和寫入到處理特定格式的文件,都提供了實(shí)用的解決方案。
到此這篇關(guān)于Python文件讀寫6大實(shí)用方法小結(jié)的文章就介紹到這了,更多相關(guān)Python文件讀寫方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
10招!看骨灰級Pythoner玩轉(zhuǎn)Python的方法
這篇文章主要介紹了10招!看骨灰級Pythoner如何玩轉(zhuǎn)Python,需要的朋友可以參考下2019-04-04
Pytorch之8層神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)Cifar-10圖像分類驗(yàn)證集準(zhǔn)確率94.71%
這篇文章主要介紹了Pytorch之8層神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)Cifar-10圖像分類驗(yàn)證集準(zhǔn)確率94.71%問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
使用Python來開發(fā)Markdown腳本擴(kuò)展的實(shí)例分享
這篇文章主要介紹了使用Python來開發(fā)Markdown腳本擴(kuò)展的實(shí)例分享,文中的示例是用來簡單地轉(zhuǎn)換文檔結(jié)構(gòu),主要為了體現(xiàn)一個(gè)思路,需要的朋友可以參考下2016-03-03
python做http代理請求的項(xiàng)目實(shí)踐
本文主要介紹了使用Python Flask實(shí)現(xiàn)HTTP代理服務(wù)器的解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03
對python 多線程中的守護(hù)線程與join的用法詳解
今天小編就為大家分享一篇對python 多線程中的守護(hù)線程與join的用法詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-02-02
Python異步處理返回進(jìn)度——使用Flask實(shí)現(xiàn)進(jìn)度條
這篇文章主要介紹了Python異步處理返回進(jìn)度——使用Flask實(shí)現(xiàn)進(jìn)度條,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05

