Короткий ответ
Для JSON используется стандартный модуль json: json.dump() сохраняет объект в файл, json.load() читает его обратно, а dumps и loads работают со строками. Для CSV в стандартной библиотеке есть модуль csv, а для табличного чтения с типами часто используют pandas.
Как это работает подробнее
JSON — основной формат обмена данными в вебе, поэтому чтение и запись встречаются при работе с API и конфигурациями.
- Сериализация.
json.dumps()превращает Python-объект в строку JSON, аjson.dump()записывает его в файл. - Десериализация.
json.loads()разбирает строку JSON в Python-объект, аjson.load()читает данные из файла. - Ограничения формата. Ключи словаря должны быть строками, а даты и множества требуют явной обработки.
- CSV.
csv.writerиcsv.readerработают со списками строк, а DictWriter и DictReader — со словарями. - Pandas. Для чтения CSV как таблицы с преобразованием типов удобна сторонняя библиотека pandas.
Пример кода
Запись и чтение JSON-файла
import json
data = {'name': 'Anna', 'age': 25}
with open('data.json', 'w') as f:
json.dump(data, f) # запись в файл
with open('data.json') as f:
loaded = json.load(f) # чтение из файла
print(loaded['name']) # AnnaЧто использовать на практике
- Файлы JSON. Для сохранения и загрузки структур используй пару
json.dump()иjson.load(). - Строки JSON. Для передачи данных по сети применяй
json.dumps()иjson.loads().