如何调用json.decode()?

时间:2015-04-03 17:39:14

标签: python json decode typeerror attributeerror

我正在处理的代码是一个将JSON对象转换为iCalendar形式的函数。为此,我正在编写iCalendar模板,然后将JSON中的信息插入到该模板中。我的代码需要JSON的解码,最近导致了很多挫折。这是我尝试过的以及我得到的错误消息。

import json
def convert(jsonData)
    ....
    data = json.decode(jsonData)

AttributeError:'module'对象没有属性'decode'

此错误让我感到困惑,因为该方法位于JSON API https://docs.python.org/2/library/json.html#module-json

import json
def convert(jsonData)
    ....
    data = json.JSONDecoder().decode(jsonData)

TypeError:期望的字符串或缓冲区

第二个错误引用了decode()中的一行代码: 第366行

end = self.raw_decode(s,idx=_w(s,o).end())

修改

data = json.JSONDecoder.decode(jsonData)

TypeError:必须使用JSONDecoder实例作为第一个参数调用unbound方法decode()(改为使用dict实例)

1 个答案:

答案 0 :(得分:1)

如果jsonData是一个字符串,则只需要json.loads(jsonData)将其转换为Python对象。