當前位置:編程學習大全網 - 編程語言 - 方法示例Python如何把字典寫入到CSV文件的

方法示例Python如何把字典寫入到CSV文件的

相關學習推薦:python教程

在實際數據分析過程中,我們分析用Python來處理數據(海量的數據),我們都是把這個數據轉換為Python的對象的,比如最為常見的字典。

比如現在有幾十萬份數據(當然壹般這麽大的數據,會用到數據庫的概念,不會去在CPU內存裏面運行),我們不可能在Excel裏面用函數進行計算壹些值吧,這樣是不現實的。

Excel只適合處理比較少的數據,具有方便快速的優勢

那麽我們假設是這麽多數據,現在我要對這個數據進行解析,轉換,最後數據分析,處理,然後寫入數據到CSV文件,這樣才達到要求,那麽如何把數據字典寫入到CSV文件了,我們就來看看。

就把這個項目和我們之前寫過的壹個成績計算系統相關聯,記得當時我們是把他寫入為txt文件,裏面是以字典的方式呈現的,那麽我們現在來改進壹下,就是為了把這份分析好的數據,呈現給其他人,比如現在要歸檔把這份數據存儲下來。

首先我們建立了壹個函數,專門寫入CSV文件的這樣壹個函數

def csv_writer():這裏我們首先把我們這份數據的鍵(表頭)給取出來,這裏我們用到了壹個遍歷算法,那麽有的小夥伴就疑問了,為什麽我不手動加入,寫入啊,也就幾行我copy就好了,但是我們考慮壹下如果鍵有幾十個的話,我們直接copy是不是顯得有點不自動化了,Python就是可以解決辦公難題,別用壹個小時的時間,妳只需要1分鐘就好。

a=[]

dict=student_infos[0]

for headers in sorted(dict.keys()):#把字典的鍵取出來

a.append(headers)

header=a#把列名給提取出來,用列表形式呈現這裏的header是壹個列表

這裏我打開了這個文件,準備寫入,裏面的參數我這裏壹壹解釋壹下。

** a表示以“追加”的形式寫入,如果是“w”的話,表示在寫入之前會清空原文件中的數據

newline是數據之間不加空行

encoding='utf-8'表示編碼格式為utf-8,如果不希望在excel中打開csv文件出現中文亂碼的話,將其去掉不寫也行。

為了不讓pycharm裏面的CSV文件亂碼,我們這裏用的參數編碼為utf-8

而excel文件編碼格式是gbk,兩者不兼容,建議加上encoding='utf-8'參數。

如果不想excel中的csv文件亂碼的話,建議將csv文件以記事本的方式打開,另存為ANSI格式即可。**

with open('成績更新.csv', 'a', newline='', encoding='utf-8') as f:

writer = csv.DictWriter(f, fieldnames=header) # 提前預覽列名,當下面代碼寫入數據時,會將其壹壹對應。

writer.writeheader() # 寫入列名

writer.writerows(student_infos) # 寫入數據

print("數據已經寫入成功!!!")這裏的字典數據使我們之前內存空間裏面已經解析處理好的數據,我這裏最後壹行直接用.writerows(字典)寫入,至於表頭,writeheader()寫入就好

其實寫入就是這麽簡單,也解決我們點點點的麻煩!

  • 上一篇:學ASP.NET之前必須先要了解那些課程
  • 下一篇:徐州市2023中考分數線與錄取線
  • copyright 2024編程學習大全網