Python 将字典写入CSV

Python 将字典写入CSV,python,dictionary,Python,Dictionary,我迭代了一个数据库并创建了一个字典。键是字段1中的记录,值是字段1中相应记录的每列中的平均值。我的问题是,将字典输出到表中的最佳方式是什么 myDict = {} def Calculate(key, fields, dt): results = {} for rec in arcpy.da.SearchCursor(table, "*"): header[names] = row[1] if results.has_key(key): r

我迭代了一个数据库并创建了一个字典。键是字段1中的记录,值是字段1中相应记录的每列中的平均值。我的问题是,将字典输出到表中的最佳方式是什么

myDict = {}
def Calculate(key, fields, dt):
    results = {}
    for rec in arcpy.da.SearchCursor(table, "*"):
    header[names] = row[1]
    if results.has_key(key):
            result = results[key]
            i = 0
        while i < len(fields):
            result[i] += rec[fields[i]]
            i += 1
            result[len(fields)] += 1
    else:
            temp = []
            i = 0
            while i < len(fields):
                temp.append(rec[fields[i]])
                i += 1
            temp.append (1)
            results[rec[key]] = temp

    endResults = {}
    for k in results:
        j = 0
        tempEndResults = []
        while j < len(results[k]) - 1: 
            tempEndResults.append(results[k][j] / results[k][len(results[k])-1])
            j += 1
        endResults[k] = tempEndResults
        i += 1
    return endResults

Calculate(1, [2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23], myDict)
myDict={}
def计算(键、字段、dt):
结果={}
对于arcpy.da.SearchCursor(表“*”)中的rec:
标题[名称]=行[1]
如果结果。有_键(键):
结果=结果[关键]
i=0
而i
我的问题是什么是最好的方法 要将我的字典输出到表中吗

myDict = {}
def Calculate(key, fields, dt):
    results = {}
    for rec in arcpy.da.SearchCursor(table, "*"):
    header[names] = row[1]
    if results.has_key(key):
            result = results[key]
            i = 0
        while i < len(fields):
            result[i] += rec[fields[i]]
            i += 1
            result[len(fields)] += 1
    else:
            temp = []
            i = 0
            while i < len(fields):
                temp.append(rec[fields[i]])
                i += 1
            temp.append (1)
            results[rec[key]] = temp

    endResults = {}
    for k in results:
        j = 0
        tempEndResults = []
        while j < len(results[k]) - 1: 
            tempEndResults.append(results[k][j] / results[k][len(results[k])-1])
            j += 1
        endResults[k] = tempEndResults
        i += 1
    return endResults

Calculate(1, [2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23], myDict)
要创建CSV,可以使用嵌套循环以表格形式打印内部值:

for k, seq in myDict.items():
    for elem in seq:
        print '%s,%s' % (k, elem)
这应该给你一个好看的CSV表

我的问题是什么是最好的方法 要将我的字典输出到表中吗

myDict = {}
def Calculate(key, fields, dt):
    results = {}
    for rec in arcpy.da.SearchCursor(table, "*"):
    header[names] = row[1]
    if results.has_key(key):
            result = results[key]
            i = 0
        while i < len(fields):
            result[i] += rec[fields[i]]
            i += 1
            result[len(fields)] += 1
    else:
            temp = []
            i = 0
            while i < len(fields):
                temp.append(rec[fields[i]])
                i += 1
            temp.append (1)
            results[rec[key]] = temp

    endResults = {}
    for k in results:
        j = 0
        tempEndResults = []
        while j < len(results[k]) - 1: 
            tempEndResults.append(results[k][j] / results[k][len(results[k])-1])
            j += 1
        endResults[k] = tempEndResults
        i += 1
    return endResults

Calculate(1, [2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23], myDict)
要创建CSV,可以使用嵌套循环以表格形式打印内部值:

for k, seq in myDict.items():
    for elem in seq:
        print '%s,%s' % (k, elem)

这将为您提供一个漂亮的CSV表。

请修复代码的缩进。欢迎使用堆栈溢出。请尽快阅读这一页。在发布代码时,通常最好避免使用制表符,每级缩进4个空格是最常见的。您可以通过将“n”粘贴复制到SO编辑框中,选择代码,然后使用编辑框上方的
{}
按钮对其进行缩进来缩进准备的代码。目前,第一个
while
循环缩进不正确(或之前的行缩进不正确),代码的尾部也完全错误;
返回endResults
不在函数定义的范围内。提出问题时请小心!如果你对你的问题很清楚的话,这对每个人都有帮助。在这种情况下,您希望csv看起来像什么?请修复代码的缩进。欢迎使用堆栈溢出。请尽快阅读这一页。在发布代码时,通常最好避免使用制表符,每级缩进4个空格是最常见的。您可以通过将“n”粘贴复制到SO编辑框中,选择代码,然后使用编辑框上方的
{}
按钮对其进行缩进来缩进准备的代码。目前,第一个
while
循环缩进不正确(或之前的行缩进不正确),代码的尾部也完全错误;
返回endResults
不在函数定义的范围内。提出问题时请小心!如果你对你的问题很清楚的话,这对每个人都有帮助。在这种情况下,您希望csv看起来像什么?