Складывание отдельных элементов в списках Python

Хочу сложить все элементы из 2 ряда . Но выдает кашу из цифр . Подскажите как это решается.

universities = [
    ['California Institute of Technology', 2174, 37704],
    ['Harvard', 19627, 39849],
    ['Massachusetts Institute of Technology', 10566, 40732],
    ['Princeton', 7802, 37000],
    ['Rice', 5879, 35551],
    ['Stanford', 19535, 40569],
    ['Yale', 11701, 40500]
]

def enrollment_stats(universities):
    return (sum (universities[0][1],universities[1][1], universities[2][1],universities[3][1],universities[4][1],universities[5][1], universities[6][1]))
print(enrollment_stats)

upd.

def enrollment_stats():
    r = 0
    p = 0
    for u in universities:
        r += u[1]
        p += u[2]
    return r , p 

Подскажите пожалуйста как вывести результат чтобы получить вот такой вариант ?

Total students: 77,285
Total tuition: $ 271,905

Ответы (1 шт):

Автор решения: wchistow

Правильный код:

def enrollment_stats(universities):
    r = 0
    for u in universities:
        r += u[1]
    return r
  1. Не надо писать 0, 1, 2, ..., для этого есть циклы

  2. Функция sum суммирует элементы переданного ей списка, а вы передаёте много чисел. Если уж хочется сделать через sum, то можно сделать так:

    def enrollment_stats(universities):
        return sum([u[1] for u in universities])
    
→ Ссылка