假设我有两个字典,bal
和prices_eth
。我想添加一个新的键bal[eth]
,如果它与prices_eth
中的值匹配,它将包含资产的价格。例如:
bal={
u'POWR': 5.341,
u'GXS': 1.758285,
u'NEO': 20.1805
}
price={
u'POWRETH': 0.00161001,
u'GXSETH': 0.00974900,
u'NEOETH': 0.09775400
}
然后我想把它们组合起来,这样它们看起来像这样
bal={
u'POWR' : {
"balance" : 5.341,
"eth price" : 0.0016100
},
u'GXS': {
"balance" : 1.758285,
"eth price" : 0.00974900
},
u'NEO': {
"balance" : 20.1805,
"eth_price" : 0.09775400
}
}
最简单的解决方案是遍历键的交集,并将相应的余额和价格作为条目添加到新字典中。如果您可以保证如果一个键存在于价格平衡中的任何一个中,它将存在于另一个中,那么交集就没有必要了。由于我无法从您的问题中假设这一点,您可以对键集使用交集操作来生成公共键(
setA.intersection(setB)
或简单地setA & setB
)。你知道吗另一个问题是,您的键不是通用名称—python命令行中的键具有后缀“ETH”。如果要执行交集检查以仅获取两个字典中都存在的项,则需要使两个字典的键保持一致。最简单的解决方法是复制一个字典,修复不一致的地方。你知道吗
或者只是
现在,使用两个具有公共键的字典,您可以创建一个字典,通过遍历键集并在新字典上设置值,将每个键的值合并到单个字典中。你知道吗
或者只是
您只需将它们键中的值更改为字典,然后在两个字典中的键上进行迭代。你知道吗
相关问题 更多 >
编程相关推荐