@frontjss

Как преобразовать тип данных?

как этот тип - строка
"test":"test", "test":"test"
превратить в dict?
  • Вопрос задан
  • 144 просмотра
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Как вариант:
import json
str1 = '"test":"test", "test":"test"'
out = json.loads('{{ {} }}'.format(str1))


{u'test': u'test'}
>>> type(out)
<type 'dict'>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@kotfrbursa
Не самое элегантное, но вполне рабочее решение "в лоб"

str1 = '"test":"test","test2":"test"'

l = str1.split(',')
dic1 = {}
for i in l:
    v = i.replace('"','').split(':')
    dic1[v[0]] = v[1]

print(dic1)


Если будет строка именно '"test":"test","test":"test"' - то в словаре окажется только одна пара (что вполне логично).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы