字典列表中的字典



我有一长串这样的字典

`SymbolInfo =
{
"time":1602832092060,
"data":[
{"id": "a", "symbol": "Name1", "high": "1.1", "last": "1"}
{"id": "b", "symbol": "Name2", "high": "2.2", "last": "2"}
{"id": "c", "symbol": "Name3", "high": "3.3", "last": "3"} 
...]
}`

,我想获得一个包含特定值的元组字典,比如

mydict = {'a': '1.1', 'b':'2.2', 'c':'3.3', ...}

我试图用一个底循环,但因为我是很新的python,我需要知道如何正确地写它。现在我有:

`mydict = {}
for x in symbolInfo:
prices['data'][x]['a'] = float(['data'][x]['high'])`

但是我得到的错误是"TypeError:列表索引必须是整数或切片,而不是字符串">

有谁能帮我吗?提前感谢!

这将得到您指定的预期输出:

mydict = {d["id"]: float(d["high"]) for d in SymbolInfo["data"]}

但我不确定这是否是你想要的。你的帖子里有很多遗漏的信息。prices变量是什么?你说你想要一个元组的字典作为输出,但是你给出的预期输出只是一个普通的字典?

您不需要遍历整个字典,您只需要Data key所以你也可以这样做:

Dict = {}
for x in SymbolInfo["data"]:
Dict[x['id']]=x['high']

相关内容

  • 没有找到相关文章

最新更新