从由唯一键值对组成的 CSV 文件创建统一字典
处理 CSV 文件时,一项常见任务是创建字典,其中每一行代表一个唯一的键值对。虽然“csv.DictReader”类提供了一种方便的方法来逐行迭代此类文件,但创建统一的字典需要不同的方法。
提供的代码尝试在嵌套循环中构造字典,由于尝试解压多个值而只有两个预期值,导致“ValueError”。要解决此问题,应稍微修改语法:
Python 3:
import csv with open('coors.csv', mode='r') as infile: reader = csv.reader(infile) with open('coors_new.csv', mode='w') as outfile: writer = csv.writer(outfile) mydict = {rows[0]: rows[1] for rows in reader}
Python 2:
import csv with open('coors.csv', mode='r') as infile: reader = csv.reader(infile) with open('coors_new.csv', mode='w') as outfile: writer = csv.writer(outfile) mydict = dict((rows[0], rows[1]) for rows in reader)
此修改后的语法可以正确迭代 CSV文件,从每一行的第一列中提取键,从第二列中提取值。结果是一个字典,其中键是唯一的并且来自第一列,值来自第二列。这种方法将所有键值对合并到一个综合字典中。
以上是如何从键值对的 CSV 文件高效创建单个字典?的详细内容。更多信息请关注PHP中文网其他相关文章!