Как преобразовать строку в словать
Есть строка dic = "{"pos": 7, 4: 5, "go": 2, "tpjc": None}" как её преобразовать в словарь? Пробовал dic = dict(dic) вышла ошибка ValueError: dictionary update sequence element #0 has length 1; 2 is required в интернете ничего не мог найти
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Только поменять внешние (или внутренние) кавычки, сейчас у вас код не валидный.
from ast import literal_eval
dic = '{"pos": 7, 4: 5, "go": 2, "tpjc": None}'
dic = literal_eval(dic)
print(type(dic), dic)
Вывод:
<class 'dict'> {'pos': 7, 4: 5, 'go': 2, 'tpjc': None}
Через json обычно лучше, но в данном случае формат не подходящий для него.