亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Django Rest / Sum 相同硬幣的響應值

Django Rest / Sum 相同硬幣的響應值

慕沐林林 2022-10-05 18:22:53
從 api,我在一枚硬幣上獲得了多條記錄。如何正確總結并將它們添加到 Wallet.objects() ?現在我有這樣一個代碼,它只是用硬幣零覆蓋舊值。示例我有回應{"coin":"BIP","value":"5"}{"coin":"ZERO","value":"4"}{"coin":"BIP","value":"15"}{"coin":"INSIDER","value":"24"}{"coin":"BIP","value":"41"}我想從這個響應中添加數據庫:"coin":"BIP","value":"61""coin":"ZERO","value":"4""coin":"INSIDER","value":"24"它的總和是所有 BIP (5+15+41)。和其他硬幣。如何?我的 Wallet.objects 現在不能合計這個金額obj, created = Wallet.objects.update_or_create(user=user, coin_id_id=coin.id, defaults={'amount_d': amount_d, 'amount_w': 0, 'cap_w': 0, 'cap_d': capitalize_d},)    obj.save()請幫忙。太棒了!
查看完整描述

1 回答

?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

coins = [

    {'coin': "A", 'value': 2},

    {'coin': "B", 'value': 5},

    {'coin': "A", 'value': 1},

    {'coin': "A", 'value': 3},

]


new = {}

for c in coins:

    coin_name = c.get("coin")

    coin_value = c.get("value", 0)


    new[coin_name] = new.get(coin_name, 0) + coin_value


coin = []

for key in new:

    coin.append({'coin': key, 'value': new[key]})


print(coin)

結果:


[{'coin': 'A', 'value': 6}, {'coin': 'B', 'value': 5}]

編輯:(添加了bip_value)


coins = [

    {'coin': "A", 'value': 2, 'bip_value': 1},

    {'coin': "B", 'value': 5, 'bip_value': 2},

    {'coin': "A", 'value': 1, 'bip_value': 3},

    {'coin': "A", 'value': 3, 'bip_value': 4},

]


new = {

    'coin': {},

    'bip': {}

}


for c in coins:

    coin_name = c.get("coin")

    coin_value = c.get("value", 0)

    bip_value = c.get("bip_value", 0)


    new['coin'][coin_name] = new['coin'].get(coin_name, 0) + coin_value

    new['bip'][coin_name] = new['bip'].get(coin_name, 0) + bip_value


coin = []

for key in new['coin']:

    coin.append({'coin': key, 'value': new['coin'][key], 'bip_value': new['bip'][key]})


print(coin)

結果:


[{'coin': 'A', 'value': 6, 'bip_value': 8}, {'coin': 'B', 'value': 5, 'bip_value': 2}]



查看完整回答
反對 回復 2022-10-05
  • 1 回答
  • 0 關注
  • 114 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號