如何在Python|中讀取CSV檔CSV 檔案讀取和寫入 - LearnCode01
文章推薦指數: 80 %
下載CSV 資料Python CSV 模組Python 提供了一個CSV 模組來處理CSV 檔。
... csv.field_size_limit – 傳回最大欄位大小; csv.get_dialect – 獲取與名稱 ...
Share
learncode01Follow
如何在Python|中讀取CSV檔CSV檔案讀取和寫入
2021年12月27日
1minread
什麼是CSV檔?
一個CSV檔是一種簡單型別的純文字檔,它使用特定結構來排列表格資料。
CSV檔的標準格式由行和列資料定義,其中換行符終止每行以開始下一行,並且每列由行中的逗號分隔。
CSV是資料交換的常見格式,因為它緊湊,簡單且通用。
許多線上服務允許使用者將表格資料從網站匯出到CSV檔中。
CSV檔將開啟到Excel中,幾乎所有資料庫都有一個允許從CSV檔案匯入的工具。
在本教學中,您將學習:
CSV示例檔
表格形式的資料也稱為CSV(逗號分隔值)–字面意思是”逗號分隔值”。
這是一種用於表示表格資料的文字格式。
檔的每一行都是表的一行。
各個列的值由分隔符分隔–逗號(,)、分號(;)或其他符號。
CSV可以很容易地被Python讀取和處理。
請考慮下表
表資料
程式設計語言
設計者
出現
外延
蟒
圭多·範·羅瑟姆
1991
.py
Java
詹姆斯·高斯林
1995
.java
C++
BjarneStroustrup
1983
.cpp
您可以在csv中表示此表,如下所示。
資料
程式設計語言,設計者,出現,擴充套件
Python,GuidovanRossum,1991,.py
詹姆斯·高斯林·賈瓦,1995年,.java
C++,BjarneStroustrup,1983,.cpp
如您所見,每行都是一行新行,每列用逗號分隔。
這是CSV檔外觀的範例。
PythonCSV模組
提供了一個CSV模組來處理CSV檔。
要讀/寫資料,您需要迴圈訪問CSV的行。
您需要使用split方法從指定的欄中獲取資料。
CSV模組函式
在CSV模組檔案中,您可以找到以下函式:
csv.field_size_limit–傳回最大欄位大小
csv.get_dialect–獲取與名稱關聯的方言
csv.list_dialects–顯示所有註冊的方言
csv.reader–從csv檔中讀取資料
csv.register_dialect–將方言與名稱相關聯
csv.writer–將資料寫入csv檔
csv.unregister_dialect–刪除與方言登錄檔名稱關聯的方言
csv.QUOTE_ALL–引用所有內容,無論型別如何。
csv.QUOTE_MINIMAL–帶特殊字元的報價欄位
csv.QUOTE_NONNUMERIC–引用所有不是數位值的欄位
csv.QUOTE_NONE–不要在輸出中引用任何內容
在本教學中,我們將僅關注允許您編輯、修改和操作CSV檔中的資料的讀取器和寫入器函式。
如何在Python中讀取CSV檔
以下是在Python中讀取CSV檔的步驟。
步驟1)若要從CSV檔中讀取資料,必須使用reader函式生成讀取器物件。
開發讀取器函式是為了獲取檔的每一行並列出所有列。
然後,您必須選擇要為其提供變數資料的列。
這聽起來比實際情況複雜得多。
讓我們看一下這個Python程式碼來讀取CSV檔案,我們會發現使用csv檔並不難。
#importnecessarymodules
importcsv
withopen('X:data.csv','rt')asf:
data=csv.reader(f)
forrowindata:
print(row)
步驟2)當您執行上述程式時,輸出將為:
['Programminglanguage;Designedby;Appeared;Extension']
['Python;GuidovanRossum;1991;.py']
['Java;JamesGosling;1995;.java']
['C++;BjarneStroustrup;1983;.cpp']
如何在Python中將CSV檔讀入字典
您也可以使用DictReader讀取CSV檔。
結果被解釋為字典,其中標題行是鍵,其他行是值。
請考慮以下程式碼
#importnecessarymodules
importcsv
reader=csv.DictReader(open("file2.csv"))
forrawinreader:
print(raw)
此程式碼的結果是:
OrderedDict([('Programminglanguage','Python'),('Designedby','GuidovanRossum'),('Appeared','1991'),('Extension','.py')])
OrderedDict([('Programminglanguage','Java'),('Designedby','JamesGosling'),('Appeared','1995'),('Extension','.java')])
OrderedDict([('Programminglanguage','C++'),('Designedby','BjarneStroustrup'),('Appeared','1985'),('Extension','.cpp')])
這種從CSV檔中讀取資料的方法比以前的方法容易得多。
但是,這不是讀取資料的最佳方式。
如何在Python中編寫CSV檔
以下是如何在Python中編寫CSV檔:
當您有一組要儲存在CSV檔中的資料集時,您必須使用writer()函式。
要在行(行)上迴圈訪問資料,必須使用writerow()函式。
請考慮以下範例。
我們將資料寫入檔”writeData.csv”,其中分隔符是撇號。
#importnecessarymodules
importcsv
withopen('X:writeData.csv',mode='w')asfile:
writer=csv.writer(file,delimiter=',',quotechar='"',quoting=csv.QUOTE_MINIMAL)
#waytowritetocsvfile
writer.writerow(['Programminglanguage','Designedby','Appeared','Extension'])
writer.writerow(['Python','GuidovanRossum','1991','.py'])
writer.writerow(['Java','JamesGosling','1995','.java'])
writer.writerow(['C++','BjarneStroustrup','1985','.cpp'])
csv檔案中的結果是:
Programminglanguage,Designedby,Appeared,Extension
Python,GuidovanRossum,1991,.py
Java,JamesGosling,1995,.java
C++,BjarneStroustrup,1983,.cpp
使用熊貓讀取CSV檔
Pandas是一個開源庫,允許您在Python中匯入CSV並執行資料操作。
Pandas提供了一種建立、操作和刪除資料的簡單方法。
您必須使用命令
延伸文章資訊
- 1csv --- CSV 文件读写— Python 3.10.7 說明文件
- 2[Day 04] CSV 讀寫操作 - iT 邦幫忙
The csv module 's reader and writer objects read and write sequences. ... 來說,csv需要第一行一行header來定義有...
- 3使用python中的csv模块写入特定单元格 - CSDN博客
csv module提供了读取和写入csv文件的工具,但不允许在适当位置修改特定单元.即使您在问题中突出显示的csvwriter.writerow(行)方法也不允许您识别和 ...
- 4教你如何在Python中讀,寫和解析CSV文
在這裡,從輸出中可以看到,我已經使用了Titanic CSV File。並且所有欄位都用逗號分隔,檔案被讀入Python。 繼續前進,讓我們看看如何寫入CSV檔案。
- 5如何在Python|中讀取CSV檔CSV 檔案讀取和寫入 - LearnCode01
下載CSV 資料Python CSV 模組Python 提供了一個CSV 模組來處理CSV 檔。 ... csv.field_size_limit – 傳回最大欄位大小; csv.get_dia...