[英]How to arrange data in the source order after using csv.DictReader()?
我正在嘗試將 csv 文件轉換為字典以進行計算,並以與原始 csv 文件中完全相同的順序(例如 a、b、c、d 等)打印它。
我剛剛學習並嘗試使用csv.DictReader(file)但我意識到每次打印時,行、列的順序不斷變化,或者我會說它隨機混亂。
對此有什么解決方案,或者我做錯了什么?
import csv
with open("breast_cancer_v1.csv", 'r') as file:
csv_file = csv.DictReader(file)
for row in csv_file:
print(dict(row))
我在我的 csv 中將我的列標題命名為“a、b、c、d、e、f、h、i、j、k、l、m”,但打印順序如下:
輸出
請注意字典鍵沒有按順序排列,如果我在 csv 中有太多行(例如 100+ 行),我的行也面臨同樣的問題
我的原始 csv 數據如下所示:
如果您想按順序打印,請使用以下命令:
import csv
with open("breast_cancer_v1.csv", 'r') as file:
for row in file:
print(row)
或者,如果您真的想將其打印為字典,則必須使用 fieldnames 選項為每一列指定一個名稱:
import csv
with open("artist.csv", newline='') as file:
fieldnames = ['first_col', 'sec_col',...,'last_col']
csv_file = csv.DictReader(file, fieldnames=fieldnames)
for row in csv_file:
print(row)
您列出字段名稱的順序將是它們出現的順序。您必須刪除 csv 文件中的原始列標題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.