如何通过循环二维列表创建字典?

2024-10-02 02:36:03 发布

您现在位置:Python中文网/ 问答频道 /正文

只是想知道有没有办法把二维列表转换成字典

在我的成绩表上我有

[(15000001, datetime.datetime(2018, 2, 26, 12, 58, 10)), (15000002, datetime.datetime(2018, 2, 26, 12, 58, 11))]

我在试着找到一个循环的方法

{'StudentID': results[row][0] ,'ClassAttended': results[row][1]}

psudocode将类似于

for row in results:
    for item in row:
        DO THIS {'StudentID': results[row][0] ,'ClassAttended': results[row][1]}

它会打印出

{'StudentID' : '15000001', 'ClassAttended': '2018-2-26 12:58:10'}

Tags: 方法in列表fordatetime字典itemdo
1条回答
网友
1楼 · 发布于 2024-10-02 02:36:03

当然,使用dictzip和列表理解

result = [ dict(zip(["StudentID", "ClassAttended"], row)) for row in inputlist]

或者更直接地说:

result = [ {"StudentID": student, "ClassAttended": class}
         for (student, class) in inputlist]

请注意,您的代码几乎是正确的,只需要累积

accumulator = []
for row in inputlist:
    d = {"StudentID": row[0],
         "ClassAttended": row[1]}
    accumulator.append(d)

相关问题 更多 >

    热门问题