我的CSV文件看起来像
Hit39,Hit24,Hit9
Hit8,Hit39,Hit21
Hit46,Hit47,Hit20
Hit24,Hit 53,Hit46
我想阅读文件并根据先来先到先得的原则创建字典
像Hit39:1,Hit 24:2等等......但是注意Hit39出现在第2列和第2列。因此,如果读者阅读它,那么它不应该将它附加到字典中,它将继续使用新的数字。
访问行号后,如果出现,则不应包含数字。
答案 0 :(得分:1)
使用 Python - 在澄清OP之前进行最佳猜测 - 将文件看作是一个巨大的列表并将增量变量分配给唯一的值出现。
import csv
from itertools import count
mydict = {}
counter = count(1)
with open('infile.csv') as fin:
for row in csv.reader(fin, skipinitialspace=True):
for col in row:
mydict[col] = mydict.get(col, next(counter))
答案 1 :(得分:0)
由于Python是一种具有词典的流行语言,因此必须使用Python。至少我认为。
import csv
reader = csv.reader(file("filename.csv"))
d = dict((line[0], 1+lineno) for lineno, line in enumerate(reader))
print d