Відповіді:
dumps бере об’єкт і виробляє рядок:
>>> a = {'foo': 3}
>>> json.dumps(a)
'{"foo": 3}'
load візьме файл-подібний об'єкт, прочитає дані з цього об’єкта і використає цей рядок для створення об'єкта:
with open('file.json') as fh:
a = json.load(fh)
Зверніть увагу , що dumpі loadперетворення між файлами і об'єктами, в той час як dumpsі loadsперетворюють між рядками і об'єктами. Ви можете думати про без- sфункції як обгортки навколо sфункцій:
def dump(obj, fh):
fh.write(dumps(obj))
def load(fh):
return loads(fh.read())
objectв значенні "щось інше, ніж str". Рядок на зразок '"foo"'декодується об'єкту Python ; рядок на зразок декодується до списку Python тощо.str'foo'"[1,2,3]"[1,2,3]
dumps()- кодування до об'єктів JSON dump()- кодування рядків у файл loads()- декодування рядка JSON load()- декодування під час читання файлу JSON
json load -> повертає об'єкт із рядка, що представляє об'єкт json.
json dumps -> повертає рядок, що представляє об'єкт json від об'єкта.
завантажити та скинути -> читати / писати з / у файл замість рядка