python array dictionary inside dictionary [关闭]

yruzcnhs  于 11个月前  发布在  Python
关注(0)|答案(1)|浏览(89)

已关闭。此问题需要details or clarity。目前不接受回答。
**要改进此问题吗?**通过editing this post添加详细信息并阐明问题。

1小时前关闭
Improve this question
我有python字典的代码:

{'code': 200,
 'msg': '',
 'snapshotVos': [{'data': {'balances': [{'asset': 'ADD',
                                         'free': '10',
                                         'locked': '0'},
                                        {'asset': 'RDP',
                                         'free': '0',
                                         'locked': '0'},
                                        {'asset': 'SHIB',
                                         'free': '0',
                                         'locked': '947415'}],
                           'totalAsset': '152'},
                  'type': 'spot',
                  'updateTime': 1703807999000}]}

字符串
我想从“余额”中获取对象值
我尝试代码,但只能给给予“snapshotVos”和“数据”
我需要数组“balances”中所有值的结果。
需要“asset”、“free”、“locked”中的键,如果任何数组的“free”和“locked”中有0,则删除此数组。

print(repo['snapshotVos'])
rows = []
for re in repo['snapshotVos']:
    typeOrder = re['data']
    rows.append(typeOrder)
print(rows)
rows1 = []
for re1 in rows:
    typeOrder = re1['balances'][0]
    rows1.append(typeOrder)
print(rows1)


结果

>>> 200
>>> [{'type': 'spot', 'updateTime': 1703807999000, 'data': {'totalAssetOfBtc': '0.00021152', 'balances': [{'asset': 'ADD', 'free': '10', 'locked': '0'}, {'asset': 'ADXOLD', 'free': '0', 'locked': '0'}]}}]
>>> [{'totalAssetOfBtc': '0.00021152', 'balances': [{'asset': 'ADD', 'free': '10', 'locked': '0'}, {'asset': 'ADXOLD', 'free': '0', 'locked': '0'}]}]
>>>  [{'asset': 'ADD', 'free': '10', 'locked': '0'}]

utugiqy6

utugiqy61#

添加另一个嵌套循环:

for re1 in rows:
    for balance in re1['balances']:
        if not (balance['free'] == '0' and balance['locked'] == '0'):
            rows1.append(list(balance.values()))

字符串

相关问题