'builtin_function_or_method'对象不可迭代

时间:2015-05-14 10:10:25

标签: python

我正试图用这个json打印所有汽车:

{
    "stuff": [
        {
           "car" : 1,
            "color" : "blue"
        },
        {
            "bcarus" : 2,
            "color" : "red"
        }
     ], 
}

在我的Serializer中,我访问这样的数据......

  

stuff = self.context.get(“request”)。data.stuff

但是当我做以下事情时......

        for item in stuff:
            print(item)

我得错了:

  

'builtin_function_or_method'对象不可迭代

为什么会出现此错误? 如何访问stuff中的for loop

当我执行print(self.context.get("request").data.stuff)时,我得到<built-in method items of dict object at 0x105225050>我认为打印stuff

1 个答案:

答案 0 :(得分:2)

Rectangle结束了一个函数方法,因此你需要调用它:

stuff

根据您的评论, for item in stuff(): print(item)

所以你可以解压缩:

dict.items

或者在分配时调用:

 for k,v  in stuff():
     print(k,v)