我正在从python中加载和提取数据,我希望将其存储在字典中。
我正在使用csv来编写读取数据,而在外部它只是存储为以逗号分隔的列。这很好用,但是当最初读取数据时(显然)它被读作字符串。 我可以使用两行代码将它转换为带有键和值的字典作为浮点数,但我的问题是我是否可以将数据作为浮点数直接加载到字典中。
我原来的代码是:
reader = csv.reader(open('testdict.csv','rb'))
dict_read = dict((x,y) for (x,y) in reader)
我已改为:
reader = csv.reader(open('testdict.csv','rb'))
read = [(float(x),float(y)) for (x,y) in reader]
dict_read = dict(read)
以所需方式加载数据。
那么,是否可以修改第一个dict_read = dict((x,y) for (x,y) in reader)
以执行以下代码的操作?
解: 解决方案是使用map-function,它必须在可迭代对象上使用:
dict_read = dict(map(float,x) for x in reader)
答案 0 :(得分:1)
试试这个:
dict_read = dict((map(float,x) for x in reader)