pythonの多重リストで処理の仕方がわからなくて困っています。
多重リストの2つめをキーとして、リスト内に同じものがあれば3つめの要素を足し算をしたいです。
listcode=[['A', 'ABC', '1'], ['B', 'DEF', '2'], ['C', 'ABC', '3'], ['D', 'XYZ', '4']]
書き出したい出力結果
[['A', 'ABC', '4'], ['B', 'DEF', '2'], ['D', 'XYZ', '4']]
可能であれば以下の出力結果も欲しい
[['A+C', 'ABC', '4'], ['B', 'DEF', '2'], ['D', 'XYZ', '4']]
自分なりにコードを書いてみましたが、うまく動作しません。どのようなコードにしたら実現できるのでしょうか?
listcode=[['A', 'ABC', '1'], ['B', 'DEF', '2'], ['C', 'ABC', '3'], ['D', 'XYZ', '4']] y=1 for i in range(0,len(listcode)): if y==len(listcode): pass else: for x in range(1,len(listcode)-1): if listcode[i][1]==listcode[x][1]: listcode[i][2]=int(listcode[i][2])+int(listcode[x][2]) del listcode[x] x=x-1 y=y+1 print(listcode)
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。