1

次のようなリストのリストがあります。

mylist = [
    ['name', 'party', 'city', '0', '0', '1'],
    ['name', 'party', 'city', '1', '1', '1']
]

位置 3 から始まる数値の合計を計算したいです。要素を int に変換した後、lis 要素の合計を計算する方法を知っています。

sum(int(mylist[i])) for i in range(len(mylist))

しかし、Python に位置 3 (数字の開始位置) から合計を開始するように指示するにはどうすればよいでしょうか。

4

2 に答える 2

0

少し簡潔なバージョン

sum(int(nums) for inn in mylist for nums in inn[3:]) # 4
于 2013-07-13T23:48:49.393 に答える
0

リストのスライスを使用します。

mylist = [['name','party','city','0','0','1'],['name','party','city','1','1','1']]

print sum([sum(map(int, item[3:])) for item in mylist])  # prints 4
于 2013-07-13T20:41:10.103 に答える