如何正确分割csv文件的字符串元素来实现以下列表?



我想让python读取一个包含整数行的csv文件。我想从CSV文件的每一行获取元素,并将它们放入一个列表中,然后将所有列表用作字典中键的值:

期望输出:

{'2020-12-20': ['0', '0', '0', '0', '206'], '2020-12-27': ['0', '0', '0', '0', '1,799'], '2021-01-03': ['0','0', '0', '0', '3,787']}

要做到这一点,我需要在逗号处分割每一行。然而,其中一些整数实际上是字符串,比如"1,799"。因此,通过在逗号处分隔每行,我将把"1,799"分解为"1799"

如果我有一个csv的数据像这样的2020-12-27,0,0,0,0,"1,799",在每一行,我如何分割数据,这样我得到'1,799'而不是"1799"?

如何使用csv模块??

您可以使用csv模块:

如果data.csv包含:

2020-12-27,0,0,0,0,"1,799"
2020-12-28,1,2,3,4,"2,800"

:

import csv
all_data = {}
with open("data.csv", "r") as f_in:
reader = csv.reader(f_in, delimiter=",", quotechar='"')
for line in reader:
all_data[line[0]] = line[1:]
print(all_data)

打印:

{
"2020-12-27": ["0", "0", "0", "0", "1,799"],
"2020-12-28": ["1", "2", "3", "4", "2,800"],
}

相关内容

  • 没有找到相关文章

最新更新