Python 中將 CSV 轉換為字典
本教程將介紹如何在 Python 中把 csv 檔案轉換為字典,其中 csv 檔案包含兩列,第一列包含鍵,第二列包含值。
在本教程中,示例 CSV 的內容如下所示。
第一列包含將被用作鍵的識別符號,第二列是值。
在 Python 中使用 csv
模組把 CSV 檔案轉換為字典
Python 有一個 csv
模組,它包含了各種實用函式來操作 CSV 檔案,如轉換、讀取、寫入和插入。要將 CSV 檔案轉換為字典,開啟 CSV 檔案,使用 csv
函式 reader()
將其讀入一個變數,將檔案儲存為一個 Python 物件。
之後,使用字典推導法,通過迭代 reader
物件並訪問其前兩行作為字典的鍵值對,將 CSV 物件轉換為字典。
import csv
dict_from_csv = {}
with open('csv_file.csv', mode='r') as inp:
reader = csv.reader(inp)
dict_from_csv = {rows[0]:rows[1] for rows in reader}
print(dict_from_csv)
輸出:
{'fruit': 'apple', 'vegetable': 'tomato', 'mammal': 'rabbit', 'fish': 'clownfish', 'bird': 'crow'}
在 Python 中使用 Pandas 把 CSV 檔案轉換為字典
另一種將 CSV 檔案轉換為 Python 字典的方法是使用 Pandas 模組,它包含了 CSV 檔案的資料處理工具。
匯入 pandas 後,利用它內建的函式 read_csv()
和一些引數來指定 csv 檔案格式。呼叫 read_csv()
後,使用 pandas 內建函式 to_dict()
將結果轉換為字典。
import pandas as pd
dict_from_csv = pd.read_csv('csv_file.csv', header=None, index_col=0, squeeze=True).to_dict()
print(dict_from_csv)
header
引數指定標頭檔案是顯式傳遞或由其他引數宣告的。
index_col
指定哪一列被用作 read_csv()
函式返回的 DataFrame
物件的標籤。在本例中,索引 0
的第一列是標籤。
最後,squeeze
引數定義了資料是否只包含一列值。在這種情況下,只有一列,因為第一列被用作索引列或標籤。
輸出:
{'fruit': 'apple', 'vegetable': 'tomato', 'mammal': 'rabbit', 'fish': 'clownfish', 'bird': 'crow'}
No module named 'pandas'
的錯誤,那麼請確認 pandas
已經安裝在你的本地機器上,使用 pip install pandas
或者 pip3 install pandas
(如果執行的是 Python 3 的話)。Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.
LinkedIn相關文章 - Python CSV
- Python 逐行寫入 CSV
- 在 Python 中將列表寫入 CSV 列
- 在 Python 中逐行讀取 CSV
- 使用 Python 將 XML 轉換為 CSV
- 在 Python 中合併 CSV 檔案
- 在 Python 中將 XLSX 轉換為 CSV 檔案