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'}
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串