迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Python 中将 CSV 转换为字典

作者:迹忆客 最近更新:2023/12/17 浏览次数:

本教程将介绍如何在 Python 中把 csv 文件转换为字典,其中 csv 文件包含两列,第一列包含键,第二列包含值。

在本教程中,示例 CSV 的内容如下所示。

在 Python 中把 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'}

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便