Json.dump 和 json.load 有什么区别?

json.dumpsjson.load有什么不同?

根据我的理解,一个将 JSON 加载到字典中,另一个将 JSON 加载到对象中。

241288 次浏览

Json load-> 从表示 json 对象的字符串中返回一个对象。

Json dump-> 返回一个字符串,该字符串表示对象中的一个 json 对象。

Load and dump-> read/write from/to file 而不是 string

dumps 接受一个对象并生成一个字符串:

>>> a = {'foo': 3}
>>> json.dumps(a)
'{"foo": 3}'

load 将获取一个类似文件的对象,从该对象读取数据,并使用该字符串创建一个对象:

with open('file.json') as fh:
a = json.load(fh)

请注意,dumpload在文件和对象之间转换,而 dumpsloads绳子和对象之间转换。您可以将 s-less 函数看作是 s函数的包装器:

def dump(obj, fh):
fh.write(dumps(obj))


def load(fh):
return loads(fh.read())