遍历在 cheerypy 中作为 **kwargs 传递的列表 python

Iterate through list passed as **kwargs in cheerypy python

嗨,我是 cheerypy 的新手 python

我正在传递对象列表

EX:

deviceArr=[{"id":"01","name":"abc"},{"id":"02","name":"abcd"}]

到 Post 请求

      def POST(self,*args, **kwargs):
            abc=[]
            abc=kwargs['deviceArr']
            print abc #output -[{"id":"01","name":"abc"},{"id":"02","name":"abcd"}]
            for device in abc:
                print device #its printing [,{,",i,d...

我希望它在迭代时打印完整的对象

    {"id":"01","name":"abc"}
    {"id":"02","name":"abcd"}

所以任何人都可以帮助我如何实现它。 谢谢

post 数据作为 JSON 字符串对象接收。您需要先将其转换为 Python 对象,以便将您的数据作为字典列表而不是字符串进行迭代:

import json

...
abc = kwargs['deviceArr']
abc = json.loads(abc)
...

这是因为abc是一个字符串。使用 json 模块将其转换为实际的 Python 字典:

import json

.
.
.

abc = json.loads(kwargs['deviceArr'])