无法将新项添加到python词典中

时间:2010-11-25 08:46:38

标签: python dictionary

嗨,我是python的新手。我试图根据不同的if语句添加不同的键值对到字典:

def getContent(file)
    for line in file:

        content = {}

        if line.startswith(titlestart):
            line = line.replace(titlestart, "")
            line = line.replace("]]></title>", "")
            content["title"] = line

        elif line.startswith(linkstart):
            line = line.replace(linkstart, "")
            line = line.replace("]]>", "")
            content["link"] = line

        elif line.startswith(pubstart):
            line = line.replace(pubstart, "")
            line = line.replace("</pubdate>", "")
            content["pubdate"] = line

    return content

print getContent(list)

但是,这总是返回空字典{}。

我认为最初是可变范围问题,但似乎不是这样。我觉得这是一个非常简单的问题,但我不确定该如何找到答案。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:8)

您为每一行重新初始化content,将初始化移到循环之外:

def getContent(file)

    content = {}

    for line in file: