Я пытаюсь сбросить словарь в файл json, используя приведенный ниже код:
import json
with open('save.json', 'w') as outfile:
json.dump({
(0, 0): 0,
(0, 1): 1,
(1, 0): 0,
(1, 1): 1,
}, outfile)
Но у меня проблема с использованием кортежей в качестве ключей. Это работает, когда я определяю словарь, но когда я пытаюсь выгрузить его в файл, он выдает следующую ошибку:
TypeError: key (0, 0) is not a string
Я использую Python 3 на машине на базе Linux.
Любая помощь в исправлении этого будет оценена.
Нет никакого «исправления» - ключи объектов JSON по определению всегда являются строками. Измените кортежи на строки, тогда ошибка исчезнет.






Стандартные ключи JSON требует являются строками.
Если ваша цель - сохранить этот словарь в файл - рассмотрите возможность использования модуля pickle:
import pickle
with open('save.json', 'w') as outfile:
pickle.dump({
(0, 0): 0,
(0, 1): 1,
(1, 0): 0,
(1, 1): 1,
}, outfile)
Как выглядит json?