1. CSV文件的基本知識
CSV是一種常用的文件格式,它以逗號作為字段的分隔符,可以將表格化數據保存到文本文件中。
常用的電子表格程序如 Excel 就可以將數據保存成 CSV 格式,也可以將 CSV 格式的數據導入到電子表格中進行查看和分析。
CSV文件的擴展名一般為.csv,它可以保存簡單的表格數據,如商品名稱、價格、庫存等,也可以保存複雜的數據,如會員信息、訂單信息等。
2. Python中的CSV模塊
Python中提供了CSV模塊用於讀寫CSV文件,可以快速方便地讀取和寫入CSV文件。
CSV模塊提供了一系列函數和類,主要包括csv.reader、csv.writer、csv.DictReader和csv.DictWriter等,各自的作用如下:
- csv.reader:創建一個用於讀取CSV文件的讀取器對象。
- csv.writer:創建一個用於寫入CSV文件的寫入器對象。
- csv.DictReader:創建一個用於讀取CSV文件並按字典返回每行數據的讀取器對象。
- csv.DictWriter:創建一個用於寫入CSV文件並按字典寫入每行數據的寫入器對象。
3. 讀取CSV文件
下面是一個讀取CSV文件的例子:
import csv with open('example.csv', 'r') as csvfile: reader = csv.reader(csvfile, delimiter=',') for row in reader: print(row)
以上代碼打開了一個名為 example.csv 的文件,並創建了一個讀取器對象 reader ,它使用逗號作為字段的分隔符。然後通過迭代讀取器對象的方式打印出每一行的數據。
4. 寫入CSV文件
下面是一個寫入CSV文件的例子:
import csv with open('example.csv', 'w', newline='') as csvfile: writer = csv.writer(csvfile, delimiter=',') writer.writerow(['商品名稱', '價格', '庫存']) writer.writerow(['商品A', '10', '100']) writer.writerow(['商品B', '20', '200']) writer.writerow(['商品C', '30', '300'])
以上代碼打開了一個名為 example.csv 的文件,並創建了一個寫入器對象 writer,它使用逗號作為字段的分隔符。然後寫入了header,和三個商品的信息。
5. 使用字典讀寫CSV文件
除了使用csv.reader和csv.writer讀寫CSV格式的數據外,Python還提供了csv.DictReader和csv.DictWriter兩個類,可以將CSV格式的數據讀取為字典或將字典寫入CSV格式的數據。
下面是一個使用字典讀取CSV文件的例子:
import csv with open('example.csv', 'r') as csvfile: reader = csv.DictReader(csvfile) for row in reader: print(row['商品名稱'], row['價格'], row['庫存'])
以上代碼創建了一個讀取器對象 reader,並將CSV文件中的行讀取為字典類型,然後通過字典的鍵獲取對應的值並打印輸出。
下面是一個使用字典寫入CSV文件的例子:
import csv with open('example.csv', 'w', newline='') as csvfile: writer = csv.DictWriter(csvfile, fieldnames=['商品名稱', '價格', '庫存']) writer.writeheader() writer.writerow({'商品名稱': '商品A', '價格': '10', '庫存': '100'}) writer.writerow({'商品名稱': '商品B', '價格': '20', '庫存': '200'}) writer.writerow({'商品名稱': '商品C', '價格': '30', '庫存': '300'})
以上代碼創建了一個寫入器對象 writer,並將字典類型的數據寫入到CSV文件中,通過 fieldnames 參數指定寫入的字段,並使用 writeheader 函數寫入header,寫入數據時使用字典形式進行寫入。
6. 結語
CSV文件是一種常見的數據格式,Python提供了csv模塊,可以方便地讀寫CSV文件。在實際的數據處理中,我們經常需要將數據從數據庫或其他數據源中讀取並保存到CSV文件中,或者從CSV文件中讀取數據並進行後續的處理和分析。
本文介紹了Python中使用csv模塊讀寫CSV文件的方法,希望對大家能有一些幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/279076.html