как преобразовать строку python в исходный тип после извлечения из базы данных MySQL - PullRequest
0 голосов
/ 11 января 2020

У меня есть поле в базе данных типа longtext со значением типа [{"A":"apple"}, {"B":"ball"} , {"c":"cat"}], то есть список словарей. Итак, теперь я извлекаю эту базу данных из SQL, используя cursor.fetchone(), которая возвращает кортеж с первым элементом в качестве моего извлеченного поля. поэтому я извлек ее, выполнив (data,) = cursor.fetchone()

, но проблема в том, что теперь data возвращает строку, а мне нужно, чтобы это был список словарей , как и раньше. Пожалуйста, предложите какой-нибудь способ получения значения моего поля из базы данных в виде списка словарей

1 Ответ

0 голосов
/ 11 января 2020

Вы можете использовать модуль json, как предложено в комментариях, например, что-то вроде этого должно работать:

import json

long_text = '[{"A":"apple"}, {"B":"ball"} , {"c":"cat"}]'
list_of_dicts = json.loads(long_text)
print(list_of_dicts)

>>> [{'A': 'apple'}, {'B': 'ball'}, {'c': 'cat'}]
...