如何将CSV文件的整列数据作为字典的值进行存储?
CSV列数据存入字典的实现方法
首先你示例中给出的字典值是集合类型(无序、元素唯一),如果需要保留数据的原始顺序和重复值,把后续代码中的set替换为list即可。
方法1:使用标准库csv(无第三方依赖)
适合轻量CSV处理场景,不需要安装额外包:
import csv res = {} col_values = [] with open("你的文件路径.csv", "r", encoding="utf-8") as f: reader = csv.reader(f) # 跳过表头行 next(reader) for row in reader: # 此处取第1列的数据(索引从0开始),需要取其他列修改索引即可 # 如果数据是字符串类型,去掉int()转换 col_values.append(int(row[0])) # 存入字典,key可自定义 res["foo"] = set(col_values)
如果需要存入多列,按索引读取不同列的内容,分别对应到字典的不同key即可。
方法2:使用pandas(适合复杂数据处理场景)
需要先安装pandas:pip install pandas
import pandas as pd res = {} # 读取CSV,header=0表示第一行是表头 df = pd.read_csv("你的文件路径.csv", header=0) # 取numbers列的数据存入字典 res["foo"] = set(df["numbers"].values)
多列存入示例:
# 自定义需要读取的列名和对应的key映射 col_key_map = { "numbers": "foo", "其他列名1": "bar", "其他列名2": "baz" } for col, key in col_key_map.items(): res[key] = set(df[col].values)
内容的提问来源于stack exchange,提问作者Dezido
相关产品推荐
相关产品推荐

