有什么方法可以在列表中为同一支球队加分

有什么方法可以在列表中为同一支球队加分

我怎样才能把一个队的分数加起来?
这就是我尝试过的:

def check_league(league_points):
    league_results = []
    for teams in league_points:
    team, points = teams.strip().rsplit(' ', 1)
    print(team, points)

这是我的清单:
['Lions 1', 'Snakes 1', 'Tarantulas 3', 'FC Awesome 0', 'Lions 1', 'FC Awesome 1', 'Tarantulas 3', 'Snakes 0', 'Lions 3', 'Grouches 0']

输出:
('Lions', '1')

('Snakes', '1')

('Tarantulas', '3')

('FC Awesome', '0')

('Lions', '1')

('FC Awesome', '1')

('Tarantulas', '3')

('Snakes', '0')

('Lions', '3')
('Grouches', '0')

我希望输出为:
'Tarantulas', '6'

'Lions', '5'

'FC Awesome', '1'

'Snakes', '1'
'Grouches', '0'

最佳答案

我会把字符串分成小组和点,然后在我们开始的时候创建一个字典。

li = ['Lions 1', 'Snakes 1', 'Tarantulas 3', 'FC Awesome 0', 'Lions 1', 'FC Awesome 1', 'Tarantulas 3', 'Snakes 0', 'Lions 3', 'Grouches 0']

dct = {}
for l in li:
    #Split only on last space
    name, count = l.rsplit(' ',1)
    if name in dct:
        dct[name] += int(count)
    else:
        dct[name] = int(count)

print(dct)
#{'Lions': 5, 'Snakes': 1, 'Tarantulas': 6, 'FC Awesome': 1, 'Grouches': 0}

关于python - 有什么方法可以在列表中为同一支球队加分?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55809756/

10-09 02:10