У вас есть объект rows (например, список словарей). Как корректно сохранить его в файл result.json средствами стандартной библиотеки?

Awith open('result.json', 'w', encoding='utf-8') as f: f.write(rows): запись объекта напрямую
Bwith open('result.json', 'w', encoding='utf-8') as f: f.write(json.loads(rows)): через json.loads
Cwith open('result.json', 'w', encoding='utf-8') as f: f.write(json.dumps(rows)): через json.dumps
Dwith open('result.json', 'w', encoding='utf-8') as f: json.dumps(f, rows): передача файла первым
Правильный ответ. json.dumps() делает строку JSON, которую затем можно записать в файл через f.write().

Разбор

Чтобы сохранить Python-объект в JSON-файл, сначала сериализуйте его в строку через json.dumps(rows), а затем запишите строку в файл, открытый в режиме w. Метод f.write() ожидает строку, поэтому передавать ему сам объект rows нельзя. json.loads делает обратное — парсит строку в объект, поэтому в этой задаче неприменим. Альтернатива — использовать json.dump(rows, f), который сериализует и пишет в один шаг.

Проверь себя · 1/3разбор после ответа
В коде with open("out.txt", "w", encoding="utf-8") as f: n = f.write("OK") чему будет равна n?
Тренировать Python в Telegram

Ещё вопросы по теме «Работа с файлами: JSON и CSV»