Python文件操作JSON CSV TSV Excel和Pickle文件序列化
引言
文件操作是Python編程的重要部分,它涉及處理各種文件格式,包括JSON、CSV、TSV、Excel和Pickle。
一、JSON文件操作
1.1 什是JSON?
JSON(JavaScript Object Notation)是一種輕量級(jí)數(shù)據(jù)交換格式,常用于數(shù)據(jù)存儲(chǔ)和交換。它采用文本格式,易于閱讀和編寫(xiě),同時(shí)也易于解析和生成。JSON數(shù)據(jù)由鍵-值對(duì)組成,類似于Python中的字典。
1.2 讀取JSON文件
Python提供了內(nèi)置的json
模塊,用于讀取和寫(xiě)入JSON文件。
讀取JSON文件的示例:
import json # 讀取JSON文件 with open('data.json', 'r') as file: data = json.load(file) # 使用數(shù)據(jù) print(data)
1.3 寫(xiě)入JSON文件
要將數(shù)據(jù)寫(xiě)入JSON文件,可以使用json.dump()
方法。
將數(shù)據(jù)寫(xiě)入JSON文件的示例:
import json data = {'name': 'John', 'age': 30, 'city': 'New York'} # 寫(xiě)入JSON文件 with open('data.json', 'w') as file: json.dump(data, file)
二、CSV和TSV文件操作
2.1 什么是CSV和TSV?
CSV(逗號(hào)分隔值)和TSV(制表符分隔值)是常用的純文本文件格式,用于存儲(chǔ)表格數(shù)據(jù)。
CSV文件使用逗號(hào)作為字段分隔符,而TSV文件使用制表符。這兩種格式在數(shù)據(jù)導(dǎo)出和導(dǎo)入中很常見(jiàn)。
2.2 讀取CSV和TSV文件
Python的csv
模塊允許讀取和寫(xiě)入CSV和TSV文件。
讀取CSV文件的示例:
import csv # 讀取CSV文件 with open('data.csv', 'r') as file: reader = csv.reader(file) for row in reader: print(row)
2.3 寫(xiě)入CSV和 TSV文件
要將數(shù)據(jù)寫(xiě)入CSV文件,可以使用csv.writer
。
將數(shù)據(jù)寫(xiě)入CSV文件的示例:
import csv data = [['Name', 'Age'], ['Alice', 25], ['Bob', 30], ['Charlie', 35]] # 寫(xiě)入CSV文件 with open('data.csv', 'w', newline='') as file: writer = csv.writer(file) writer.writerows(data)
三、Excel文件操作
3.1 什么是Excel文件?
Excel是一種流行的電子表格應(yīng)用程序,用于處理和分析數(shù)據(jù)。
在Python中,可以使用第三方庫(kù)openpyxl
來(lái)讀取和寫(xiě)入Excel文件。
3.2 讀取Excel文件
使用openpyxl
庫(kù)讀取Excel文件的示例:
import openpyxl # 讀取Excel文件 workbook = openpyxl.load_workbook('data.xlsx') sheet = workbook.active for row in sheet.iter_rows(): for cell in row: print(cell.value)
3.3 寫(xiě)入Excel文件
要將數(shù)據(jù)寫(xiě)入Excel文件,同樣可以使用openpyxl
庫(kù)。
將數(shù)據(jù)寫(xiě)入Excel文件的示例:
import openpyxl data = [['Name', 'Age'], ['Alice', 25], ['Bob', 30], ['Charlie', 35]] # 寫(xiě)入Excel文件 workbook = openpyxl.Workbook() sheet = workbook.active for row in data: sheet.append(row) workbook.save('data.xlsx')
四、Pickle文件序列化
4.1 什么是Pickle?
Pickle是Python的標(biāo)準(zhǔn)模塊,用于將Python對(duì)象序列化為二進(jìn)制數(shù)據(jù)。允許將對(duì)象保存到文件中,以便稍后恢復(fù)。Pickle對(duì)于保存復(fù)雜的數(shù)據(jù)結(jié)構(gòu)非常有用。
4.2 序列化對(duì)象
使用Pickle將對(duì)象序列化為文件的示例:
import pickle data = {'name': 'John', 'age': 30, 'city': 'New York'} # 序列化對(duì)象并保存到文件 with open('data.pkl', 'wb') as file: pickle.dump(data, file)
4.3 反序列化對(duì)象
要從Pickle文件中加載對(duì)象,可以使用pickle.load()
方法。
反序列化對(duì)象的示例:
import pickle # 從文件加載對(duì)象 with open('data.pkl', 'rb') as file: loaded_data = pickle.load(file) # 使用加載的數(shù)據(jù) print(loaded_data)
總結(jié)
文件操作是Python編程中的重要部分,涉及處理各種文件格式,包括JSON、CSV、TSV、Excel和Pickle。
文章內(nèi)容包括如何讀取和寫(xiě)入這些文件格式,以及如何進(jìn)行文件序列化和反序列化。這些技能對(duì)于處理數(shù)據(jù)、配置文件、日志等任務(wù)非常重要,因此在Python編程中是不可或缺的。
以上就是Python文件操作:JSON、CSV、TSV、Excel和Pickle文件序列化的詳細(xì)內(nèi)容,更多關(guān)于Python文件操作序列化的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Python中的JMESPath庫(kù)示例詳解
- Python利用jmespath模塊進(jìn)行json數(shù)據(jù)處理
- go語(yǔ)言搬磚之go jmespath實(shí)現(xiàn)查詢json數(shù)據(jù)
- 全面掌握Python?JSON庫(kù)函數(shù)與方法學(xué)會(huì)JSON數(shù)據(jù)處理
- Python中的JSON?Pickle?Shelve模塊特性與區(qū)別實(shí)例探究
- Python與Node.js之間實(shí)現(xiàn)通信的JSON數(shù)據(jù)接收發(fā)送
- python Aligo庫(kù)設(shè)置json路徑使用詳解
- Python?JMESPath庫(kù)輕松操作JSON進(jìn)行數(shù)據(jù)查詢方法實(shí)例
相關(guān)文章
python時(shí)間整形轉(zhuǎn)標(biāo)準(zhǔn)格式的示例分享
這篇文章主要介紹了python時(shí)間整形轉(zhuǎn)標(biāo)準(zhǔn)格式的示例,需要的朋友可以參考下2014-02-02Django與AJAX實(shí)現(xiàn)網(wǎng)頁(yè)動(dòng)態(tài)數(shù)據(jù)顯示的示例代碼
這篇文章主要介紹了Django與AJAX實(shí)現(xiàn)網(wǎng)頁(yè)動(dòng)態(tài)數(shù)據(jù)顯示的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02python結(jié)合shell查詢google關(guān)鍵詞排名的實(shí)現(xiàn)代碼
這篇文章主要介紹了python結(jié)合shell查詢google關(guān)鍵詞排名的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-02-02Python中輸入若干整數(shù)以逗號(hào)間隔實(shí)現(xiàn)統(tǒng)計(jì)每個(gè)整數(shù)出現(xiàn)次數(shù)
這篇文章主要介紹了Python中輸入若干整數(shù)以逗號(hào)間隔實(shí)現(xiàn)統(tǒng)計(jì)每個(gè)整數(shù)出現(xiàn)次數(shù)的相關(guān)資料,需要的小伙伴可以參考一下,希望對(duì)你有所幫助2022-04-04python makedirs() 遞歸創(chuàng)建目錄
os.makedirs()函數(shù)用于在Python中遞歸地創(chuàng)建目錄,支持設(shè)置權(quán)限和處理目錄已存在的情況,下面就來(lái)具體介紹一下,感興趣的可以了解一下2024-12-12使用Python的PEAK來(lái)適配協(xié)議的教程
這篇文章主要介紹了使用Python的PEAK來(lái)適配協(xié)議的教程,來(lái)自于IBM官方網(wǎng)站技術(shù)文檔,需要的朋友可以參考下2015-04-04Python多線程、異步+多進(jìn)程爬蟲(chóng)實(shí)現(xiàn)代碼
這篇文章主要介紹了Python多線程、異步+多進(jìn)程爬蟲(chóng)實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-02-02