为了账号安全,请及时绑定邮箱和手机立即绑定

Python减量字典

Python减量字典

江户川乱折腾 2021-03-29 12:41:05
我可以减少字典中的值吗?我有一个带有字符串键和int值的字典,如何递减所有值的键?d={'A': 0, 'B' : 1, 'C' : 2, 'D' : 3}d.pop('B')##How to decrement values after 'B' ? 
查看完整描述

2 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

假设在这种情况下,“在B之后”表示按字母顺序在“ B”之后的键,则此代码段应该有效:


d={'A': 0, 'B' : 1, 'C' : 2, 'D' : 3}

d.pop('B')

for k in d.keys():

    if k > 'B':

        d[k] -= 1


查看完整回答
反对 回复 2021-04-27
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

d={'A': 0, 'B' : 1, 'C' : 2, 'D' : 3}

e={'dfg': 3, 'dec': 2, 'aaa': 0, 'cbbb': 1}



def remElem(l, i):

    del l[i]

    [l.update({k: v-1}) for k, v in l.items() if k > i]



print(d)

remElem(d, 'B')

print(d)


print(e)

remElem(e, 'cbbb')

print(e)

给出:


{'A': 0, 'C': 2, 'B': 1, 'D': 3}

{'A': 0, 'C': 1, 'D': 2}


{'dfg': 3, 'dec': 2, 'aaa': 0, 'cbbb': 1}

{'dfg': 2, 'dec': 1, 'aaa': 0}


查看完整回答
反对 回复 2021-04-27
  • 2 回答
  • 0 关注
  • 197 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号