Я написал собственный JsonEncoder, чтобы избежать ошибок, когда JSON пытается закодировать результат из dict.values()
TypeError: объект типа dict_values не JSON сериализуемый dict_values
Итак, я работал и использовал этот код, чтобы заставить его работать. Но можно заменить инстилляцию _DICT_VALUES_TYPE
простым импортом в python?
_DICT_VALUES_TYPE = type({}.values())
class CustomJsonEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, _DICT_VALUES_TYPE):
return tuple(obj)
# Let the base class default method raise the TypeError
return json.JSONEncoder.default(self, obj)
Я пытался напрямую импортировать dict_values из коллекций from collection import dict_values
, но когда я пытаюсь запустить свою программу с этот импорт я получил исключение:
ImportError: невозможно импортировать имя 'dict_values' из 'коллекций'