我想将字符串列表转换为字典列表
I want to convert a list of strings to a list of dictionaries
我将 Twitter 数据作为 json 存储到 mysql 数据库。当我取回它时,它 return 是一个字符串列表而不是字典列表。我正在寻找一种将其转换为字典列表的方法。这是我取回存储数据的格式。 "tweetdata" 是数据库中的列名
[{"tweetdata":"[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for
Android\",\"Likes\":0,\"RTs\":0},}]"}]
我希望它成为 return 像这样的列名被删除的字典列表
[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for
Android\",\"Likes\":0,\"RTs\":0},}]
试试这个:
如果您的数据在 tweetdata
变量中,则 tweetdata[0]["tweetdata"]
它会 return 像这样:
[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for Android\",\"Likes\":0,\"RTs\":0},}]
实际上你可以这样做:
data = [{"tweetdata":"[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for Android\",\"Likes\":0,\"RTs\":0},}]"}][0]["tweetdata"]
并打印 data
你会得到相同的结果。
首先,您提供的 json 格式似乎有误。如果您有正确的 json 格式,那么您可以使用 json loads 函数加载 json 数据并将其转换为字典类型。这是 python.
中的代码片段
import json
json_data = '[{"tweetdata":[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for Android\",\"Likes\":0,\"RTs\":0}]}]'
parsed_json = json.loads(json_data)
parsed_dict = parsed_json[0]['tweetdata'][0]
print(type(parsed_dict))
for item in parsed_dict.items():
print(item)
上面的代码片段将打印这些。
<class 'dict'>
('text', 'b problem')
('len', 10)
('Date', 1583160242000)
('Source', 'Twitter for Android')
('Likes', 0)
('RTs', 0)
我将 Twitter 数据作为 json 存储到 mysql 数据库。当我取回它时,它 return 是一个字符串列表而不是字典列表。我正在寻找一种将其转换为字典列表的方法。这是我取回存储数据的格式。 "tweetdata" 是数据库中的列名
[{"tweetdata":"[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for
Android\",\"Likes\":0,\"RTs\":0},}]"}]
我希望它成为 return 像这样的列名被删除的字典列表
[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for
Android\",\"Likes\":0,\"RTs\":0},}]
试试这个:
如果您的数据在 tweetdata
变量中,则 tweetdata[0]["tweetdata"]
它会 return 像这样:
[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for Android\",\"Likes\":0,\"RTs\":0},}]
实际上你可以这样做:
data = [{"tweetdata":"[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for Android\",\"Likes\":0,\"RTs\":0},}]"}][0]["tweetdata"]
并打印 data
你会得到相同的结果。
首先,您提供的 json 格式似乎有误。如果您有正确的 json 格式,那么您可以使用 json loads 函数加载 json 数据并将其转换为字典类型。这是 python.
中的代码片段import json
json_data = '[{"tweetdata":[{\"text\":\"b problem\",\"len\":10,\"Date\":1583160242000,\"Source\":\"Twitter for Android\",\"Likes\":0,\"RTs\":0}]}]'
parsed_json = json.loads(json_data)
parsed_dict = parsed_json[0]['tweetdata'][0]
print(type(parsed_dict))
for item in parsed_dict.items():
print(item)
上面的代码片段将打印这些。
<class 'dict'>
('text', 'b problem')
('len', 10)
('Date', 1583160242000)
('Source', 'Twitter for Android')
('Likes', 0)
('RTs', 0)