小编boj*_*ojo的帖子

Python字典到CSV

我编写了将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)
Run Code Online (Sandbox Code Playgroud)

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

我查看了使用DictWriter,但我无法弄清楚如何告诉它所需的字段名是什么.

python csv dictionary

27
推荐指数
3
解决办法
3万
查看次数

标签 统计

csv ×1

dictionary ×1

python ×1