gpt4 book ai didi

Python 字典到 CSV

转载 作者:IT老高 更新时间:2023-10-28 22:22:07 25 4
gpt4 key购买 nike

我已经编写了将 CSV 读入 python 字典的代码,效果很好。我正在尝试将字典恢复为 CSV。我写了以下内容:

import csv

itemDict={}

listReader = csv.reader(open('/Users/broberts/Desktop/Sum_CSP1.csv','rU'), delimiter = ',', quotechar='|')

for row in listReader:
fID = row[0]
fClassRange = row[1]
fArea = row[2]

if itemDict.has_key(fID):
itemDict[fID][fClassRange]=fArea
else:
itemDict[fID] = {'5.0 to 5.25':'','5.25 to 5.5':'','5.5 to 5.75':'','5.75 to 6.0':'','6.0 to 6.25':'','6.25 to 6.5':'','6.5 to 6.75':'','6.75 to 7.0':'','7.0 to 7.25':'','7.25 to 7.5':'','7.5 to 7.75':'','7.75 to 8.0':'','8.0 to 8.25':'',}
itemDict[fID][fClassRange]=fArea

listWriter = csv.writer(open('/Users/broberts/Desktop/Sum_CSP1_output.csv', 'wb'), delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)

for a in itemDict:
print a
listWriter.writerow(a)

在最后一个 block 中,listWriter 不会向 CSV 写入任何内容,尽管它会打印 a。我相信这与字典无序有关。我真的需要写出 fID 和与每个 fID 关联的每个键(fClassRange 例如“5.0 到 5.25”),然后将与每个 fClassRange 关联的值 fArea 写到 CSV,但我什至还没有得到那么远我的代码,因为我什至无法弄清楚如何写出 fID。

我研究过使用 DictWriter,但我不知道如何告诉它所需的 fieldnames 是什么。

最佳答案

样本数据:

mydict = [{"col1": 1000, "col2": 2000}, {"col1": 3000, "col2": 4000}]

使用 pandas 将字典列表转换为 CSV 的单线:

import pandas as pd

pd.DataFrame(mydict).to_csv('out.csv', index=False)

结果:

col1,col2
1000,2000
3000,4000

关于Python 字典到 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8331469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com