2014-09-23 51 views
0

我试图建立一个字典,并通过使用标题,日期和链接 喂日期的Jinja2模板但是当我尝试建立字典我得到“unhashable字典”的Python unhashable字典

d = { 

    { 

    "title":"SOme title", 
    "date":2007, 
    "link":"somelink" 
    }, 

    { 

    "title":"SOme2 title", 
    "date":2007, 
    "link":"somelink" 
    }, 

} 


print d 

反正有这个问题吗?还是应该把它转换成JSOn对象?

+0

你的变量** d **不是一本字典。它是一个字典列表。试试'd = [{...},{...}]' – 2014-09-23 14:50:28

+0

这是因为这不是字典的正确格式。仔细看,你在字典里有两个无钥匙的字典。你可能会想要@JoseVarez提供的,这是一个列表的字典。 – Manhattan 2014-09-23 14:50:30

+0

你为什么不使用字典清单? – 2014-09-23 14:50:58

回答

2

问题是,你试图创建的是一组字典 - 外部{}是集合表示法。

集中的每个项目必须是哈希的,你需要建立一个列表:

d = [ 

    { 

    "title":"SOme title", 
    "date":2007, 
    "link":"somelink" 
    }, 

    { 

    "title":"SOme2 title", 
    "date":2007, 
    "link":"somelink" 
    } 

]