使用 Python 将 CSV 数据加载到列表和字典中
简介
CSV 文件格式是计算机之间交换数据的常用格式。功能强大且适应性强的编程语言 Python 内置了许多库,可以读取和写入 CSV 文件。列表和字典是两种最流行的 Python 数据结构,它们非常适合存储 CSV 数据以进行进一步处理和分析。
本文将逐步引导您了解如何使用 Python 将 CSV 数据加载到列表和字典中,并使用实际示例使过程更容易理解。
将 CSV 数据加载到 Python 列表中
Python 附带的 csv 模块允许用户读取和写入 CSV 文件。我们将使用一个名为 data.csv 的虚构 CSV 文件来演示如何将 CSV 数据加载到列表中。它包含以下信息
Name, Age, Country Alice, 25, USA Bob, 30, UK Charlie, 35, Canada
让我们看看如何将此 CSV 数据添加到列表中
import csv with open('data.csv', 'r') as file: reader = csv.reader(file) data_list = list(reader) print(data_list)
此脚本读取 CSV 数据并将其转换为列表的列表,其中每个子列表对应于 CSV 文件中的一行
[['Name', 'Age', 'Country'], ['Alice', '25', 'USA'], ['Bob', '30', 'UK'], ['Charlie', '35', 'Canada']]
Learn Python in-depth with real-world projects through our Python certification course. Enroll and become a certified expert to boost your career.
将 CSV 数据加载到 Python 字典中
Python 字典可以提供一种更具组织性和适应性强的存储 CSV 数据的方法。csv.DictReader 对象用于将 CSV 数据导入字典,它将每一行视为具有标题的排序字典映射。
我们应该将我们的 data.csv 文件加载到字典中
import csv with open('data.csv', 'r') as file: reader = csv.DictReader(file) data_dict = [row for row in reader] print(data_dict)
运行此脚本时,会生成一个字典列表,每个字典对应于 CSV 文件中的一行。
[{'Name': 'Alice', 'Age': '25', 'Country': 'USA'}, {'Name': 'Bob', 'Age': '30', 'Country': 'UK'}, {'Name': 'Charlie', 'Age': '35', 'Country': 'Canada'}]
这里,CSV 标题(姓名、年龄和国家/地区)充当字典的键,而字典中的其余条目充当匹配的值。
使用列表和字典存储 CSV 数据的优势
将 CSV 数据加载到列表或字典中是存储和管理数据的一种简单方法。例如,您可以对每个数据条目应用函数,或者循环遍历列表或字典以检索特定数据条目。
此外,使用字典可以提供其他好处。对于某些使用场景,键值对可能是访问数据的更逻辑方法。例如,您可以立即从 data_dict 中检索第二人的“国家/地区”,如下所示
print(data_dict[1]['Country']) # Prints 'UK'
结论
Python 中内置的 csv 模块使处理 CSV 文件变得简单。您是选择将 CSV 数据存储在列表中还是字典中,主要取决于您拥有的数据类型以及您打算如何处理和使用它。与字典相比,列表很简单,并提供有序的项目集合,而字典则提供结构化且灵活的方法,并为轻松访问数据而将键映射到值。
如果您想使用 Python 分析和处理数据,那么了解这些 CSV 数据处理技术至关重要。通过实际实现和分析,您可以成功地为您的特定用例选择最佳方法,从而创建易读且高效的代码。无论您是在进行数据分析、机器学习还是网络抓取,这些技能都将非常有用。