本文实例讲述了python实现list元素按关键字相加减的方法。分享给大家供大家参考,具体如下:
Python list中的元素按关键字相加或相减:
代码如下 | 复制代码 |
# coding=utf-8 # 两个list按关键字相加或相减 defListAdd(list1, list2, bAdd=True): ifbAdd==False: list2=[(k,-v)for(k, v)inlist2] d={} list0=list1+list2 for(k, v)inlist0: d.setdefault(k,0) # 设置字典元素初始值 d[k]+=v # 对字典中的元素按关键字相加 ret=list(d.items()) # 字典转换成list ret=sorted(ret) # 对list排序 returnret if__name__=='__main__': a=[("s1",10), ("s2",13), ("s3",25), ("s7",30)] b=[("s1",22), ("s3",16), ("s10",8)] print("a=", a) print("b=", b) ret1=ListAdd(a, b) # ret1 = a + b print("ret1=", ret1) ret2=ListAdd(a, b,False)# ret2 = a - b print("ret2=", ret2) |
运行:
代码如下 | 复制代码 |
E:ProgramPython>del.py a=[('s1',10), ('s2',13), ('s3',25), ('s7',30)] b=[('s1',22), ('s3',16), ('s10',8)] ret1=[('s1',32), ('s10',8), ('s2',13), ('s3',41), ('s7',30)] ret2=[('s1',-12), ('s10',-8), ('s2',13), ('s3',9), ('s7',30)] |
一亿小目标手游
如果让你的人生从来,你可以像王健林一样霸气的表示一亿小目标吗
一亿小目标手机版2019
一亿小目标手机版2019趣味休闲模拟游戏,玩家在游戏中将会通
巴啦啦梦幻餐厅
巴啦啦梦幻餐厅是一款充满魔幻色彩的二次元模拟经营手游,游戏界
恋爱进行时九游版
恋爱进行时九游版是一款以模拟恋爱玩法为核心的角色扮演手游,精
皇室对决fr(Null’s Royale)
皇室对决fr,即皇室战争的私服变态版本,在该版本中玩家能够拥