教你如何在Python中讀,寫和解析CSV文

文章推薦指數: 80 %
投票人數:10人

在這裡,從輸出中可以看到,我已經使用了Titanic CSV File。

並且所有欄位都用逗號分隔,檔案被讀入Python。

繼續前進,讓我們看看如何寫入CSV檔案。

MdEditor 教你如何在Python中讀,寫和解析CSV文 語言:CN/TW/HK 時間 2021-02-2512:01:51 華為雲開發者社群 主題: python titanic 開春大禮《華為雲技術精選集》大廠100+前沿技術實戰分享!>>> 摘要:在這篇文章中關於“在Python如何閱讀CSV檔案”中,我們將學習如何讀,寫和解析的CSV檔案的Python。

您知道將表格資料儲存到純文字檔案背後的機制是什麼嗎?答案是CSV(逗號分隔值)檔案,該檔案允許將資料轉換為純文字格式。

在這篇文章中關於“在Python如何閱讀CSV檔案”中,我們將學習如何讀,寫和解析的CSV檔案的Python。

將詳細討論以下方面: 什麼是CSV檔案及其用途? 為什麼使用CSV檔案格式? PythonCSV模組 CSV模組功能 在Python中執行寫入,讀取CSV檔案的操作 讓我們開始吧。

什麼是CSV檔案及其用途? CSV(逗號分隔值)是一種純文字檔案格式,用於儲存表格資料(例如電子表格或資料庫)。

它本質上儲存的表格資料包括數字和純文字。

大多數線上服務使使用者可以自由地將網站中的資料匯出為CSV檔案格式。

CSV檔案通常會在Excel中開啟,幾乎所有資料庫都具有不同的特定工具以允許匯入相同的檔案。

檔案的每一行都稱為記錄。

每個記錄由用逗號分隔 的欄位組成,這些欄位也稱為“定界符”,這是預設定界符,其他記錄包括pipe(|),分號(;)。

下面給出的是一個普通CSV檔案的結構,以逗號分隔,我正在使用一個泰坦尼克號CSV檔案。

結構 Passenger,Id,Survived,Pclass,Name,Sex.Age 1,0,3Braund,Mr.OwenHarris,male,22 2,1,1Cumings,Mrs.JohnBradley(FlorenceBriggsThayer),female,38 3,1,3Heikkinen,Miss.Laina,female,26 4,1,1Futrelle,Mrs.JacquesHeath(LilyMayPeel),female,35 繼續說說使用CSV檔案格式的原因。

為什麼使用CSV檔案格式? CSV是純文字檔案,它使資料交換更容易,也更易於匯入到電子表格或資料庫儲存中。

例如:您可能希望將某個統計分析的資料匯出到CSV檔案,然後將其匯入電子表格以進行進一步分析。

總體而言,它使使用者可以通過程式設計輕鬆地體驗工作。

任何支援文字檔案或字串操作的語言(例如Python)都可以直接使用CSV檔案。

繼續前進,讓我們看看Python如何原生使用CSV。

PythonCSV模組 Python使用的CSV軟體包是標準庫的一部分,因此您無需安裝它。

importcsv 現在,讓我向您展示不同的CSV功能。

CSV模組功能 在CSV模組下,您可以找到以下功能: 讓我們繼續前進,從PythonCSV檔案上不同操作的編碼角度來看。

Python中CSV檔案的操作 載入CSV檔案後,您可以執行多種操作。

我將在Python中顯示對CSV檔案的讀取和寫入操作。

在Python中讀取CSV檔案: importcsv withopen('Titanic.csv','r')ascsv_file:#Opensthefileinreadmode csv_reader=csv.reader(csv_file)#Makinguseofreadermethodforreadingthefile forlineincsv_reader:#Iteratethroughthelooptoreadlinebyline print(line) 輸出: 在這裡,從輸出中可以看到,我已經使用了TitanicCSVFile。

並且所有欄位都用逗號分隔,檔案被讀入Python。

繼續前進,讓我們看看如何寫入CSV檔案。

用Python寫入CSV檔案: importcsv withopen('Titanic.csv','r')ascsv_file: csv_reader=csv.reader(csv_file) withopen('new_Titanic.csv','w')asnew_file:#Openanewfilenamed'new_titanic.csv'underwritemode csv_writer=csv.writer(new_file,delimiter=';')#makinguseofwritemethod forlineincsv_reader:#foreachfileincsv_reader csv_writer.writerow(line)#writingouttoanewfilefromeachlineoftheoriginalfile out: 現在,這種使用讀寫器方法處理CSV檔案的方法是最常見的方法之一。

讓我們繼續前進,看看如何使用python字典來做同樣的事情。

讀取CSV檔案作為字典: importcsv withopen('Titanic.csv','r')ascsv_file:#Openthefileinreadmode csv_reader=csv.DictReader(csv_file)#usedictreadermethodtoreadethefileindictionary forlineincsv_reader:#Iteratethroughthelooptoreadlinebyline print(line) 輸出: 從輸出中可以看到,欄位已被替換,它們現在充當字典的“鍵”。

讓我們看看如何將CSV檔案作為字典寫入。

作為字典寫入CSV檔案 importcsv mydict=[{'Passenger':'1','Id':'0','Survived':'3'},#key-valuepairsasdictionaryobj {'Passenger':'2','Id':'1','Survived':'1'}, {'Passenger':'3','Id':'1','Survived':'3'}] fields=['Passenger','Id','Survived']#fieldnames filename='new_Titanic.csv'#nameofcsvfile withopen('new_Titanic.csv','w')asnew_csv_file:#openanewfile'new_titanic,csv'underwritemode writer=csv.DictWriter(new_csv_file,fieldnames=fields) writer.writeheader()#writingtheheaders(fieldnames) writer.writerows(mydict)#writingdatarows 輸出: 讓我們看看如何在python中將CSV檔案讀取為熊貓。

以熊貓格式讀取CSV檔案: importpandas#installpandaspackage result=pandas.read_csv('Titanic.csv')#readthecsvfile print(result)#printresult 輸出: 這使我們到文章“如何在Python中讀取CSV檔案”的結尾。

我希望您對與CSV相關的所有概念,如何讀寫它,如何將CSV作為字典進行讀寫以及如何將CSV作為熊貓進行閱讀都一目瞭然。

確保儘可能多地練習並恢復經驗。

本文分享自華為雲社群《如何在Python中讀取CSV檔案?》,原文作者:Yuchuan。

  點選關注,第一時間瞭解華為雲新鮮技術~ 「其他文章」 帶你掌握C中三種類成員初始化方式 實踐GoF的設計模式:工廠方法模式 DCM:一個能夠改善所有應用資料互動場景的中介軟體新秀 手繪圖解java類載入原理 關於加密通道規範,你真正用的是TLS,而非SSL 程式碼重構,真的只有複雜化一條路嗎? 解讀分散式排程平臺Airflow在華為雲MRS中的實踐 透過例項demo帶你認識gRPC 帶你聚焦GaussDB(DWS)儲存時遊標使用 傳統到敏捷的轉型中,誰更適合做ScrumMaster? 輕鬆解決研發知識管理難題 Java中觀察者模式與委託,還在傻傻分不清 如何使用Python實現影象融合及加法運算? 什麼是強化學習? 探索開源工作流引擎Azkaban在MRS中的實踐 GaussDB(DWS)NOTIN優化技術解密:排他分析場景400倍效能提升 Java中觀察者模式與委託,還在傻傻分不清 Java中的執行緒到底有哪些安全策略 一圖詳解java-class類檔案原理 Java中的執行緒到底有哪些安全策略 「python」 臥槽!GitHub排行榜即將下線;酷炫的Python熱過載工具;開發者體驗·電子書;C最佳實踐合輯;前沿論文|ShowMeAI資訊日報 「Python」sklearn第一彈-標準化和非線性轉化 python指令碼第一彈——Excel處理 Python3.12目標:還可以更快! python-django官方教程手把手(二)-連線資料庫 如果你需要用Python搞個二維碼,那應該收藏這篇部落格 Python實現定時任務的利器apscheduler Python語法之集合 Python語法之迴圈 每個程式設計師都應該知道的高階Python技術 「titanic」 俄羅斯BitblazeTitanBM15膝上型電腦已預生產,搭載其國產Baikal-M1處理器 新泰坦將至,微星TitanGT77旗艦遊戲本現身Geekbench,搭載16核i7-12800HX 極講究・四月好物名單:BMWi7、TitanSlim全鍵盤手機、憤怒的小鳥重製版、Apple雷靂4Pro連線線 在Android13Beta上攻破TitanM晶片,谷歌將提供近1000萬元賞金 一年內原團隊幾乎分崩離析:蘋果自動駕駛汽車團隊又一位經理跳槽Meta,ProjectTitan專案再遭挫折 發力Titan造車專案蘋果聘請前特斯拉自動駕駛軟體主管 2021年最佳3D渲染GPU 整理了25個Pandas實用技巧(下) 美商艾湃電競TITAN泰坦360一體式水冷散熱器開箱 獵金部落TITANTF600電源圖賞:適合主流玩家的迷你電源



請為這篇文章評分?