json.dumps和 json.load有什么不同?
json.dumps
json.load
根据我的理解,一个将 JSON 加载到字典中,另一个将 JSON 加载到对象中。
Json load-> 从表示 json 对象的字符串中返回一个对象。
Json dump-> 返回一个字符串,该字符串表示对象中的一个 json 对象。
Load and dump-> read/write from/to file 而不是 string
dumps 接受一个对象并生成一个字符串:
dumps
>>> a = {'foo': 3} >>> json.dumps(a) '{"foo": 3}'
load 将获取一个类似文件的对象,从该对象读取数据,并使用该字符串创建一个对象:
load
with open('file.json') as fh: a = json.load(fh)
请注意,dump和 load在文件和对象之间转换,而 dumps和 loads在 绳子和对象之间转换。您可以将 s-less 函数看作是 s函数的包装器:
dump
loads
s
def dump(obj, fh): fh.write(dumps(obj)) def load(fh): return loads(fh.read())