无法创建字典

时间:2015-09-28 04:42:09

标签: python dictionary

我正在尝试编写用于日志解析的脚本。 我有一个文件,其中的日志乱七八糟。特定日志的每一行都有时间戳,所以我想用它来对它们进行排序。

例如

10:48开始 。 。 10:50开始 。 。 10:42开始 第一行将包含关键字“开始”和时间戳。 “开始”和下一个“开始”之间的线是一组。我想根据时间戳在日志文件中对所有这些集进行排序。

代码逻辑: 我想创建字典,我将在这里选择它并将其指定为“key”和该日志集的值中的文本。然后我将在字典中对“键”进行排序,并在文件中以排序的顺序打印它们的“值”。 但是我收到错误“TypeError:unhashable type:'list'”

write1 = False
x = 0
search3 = "start"
matched = dict()
matched = {}

# fo is a list which is defined elsewhre in the code.

for line in fo:

    if search3 in line:

    #got the Hello2 printed which indicates script enters this loop

        print('hello2')
        write1 = True
        x +=1
        time = line.split()[3]
        name1 = [time.split(':')[0] +":"+time.split(':')[1] + ":"+     time.split(':')[2]]
        matched[name1] = line

    elif write1:
        matched[name1] += line

print(matched.keys())

如果我的逻辑和我的工作方式是正确的,请告诉我?

1 个答案:

答案 0 :(得分:1)

您将moveSquare设置为列表。列表不可清除,只有元组。但是,我假设您希望name1为字符串,因此您只想删除括号:

name1