В Python список — это структура данных, которая хранит несколько элементов в одной переменной. Списки создаются путем помещения всех элементов в квадратные скобки [], разделенных запятыми. Он может содержать любое количество элементов и они могут быть разных типов(целое число, число с плавающей запятой, строка и т. д.).

Например, вот список целых чисел:

numbers = [1, 2, 3, 4, 5]
Содержание

Сумма через цикл for

Цикл for в Python используется для перебора последовательности(например, списка, кортежа, словаря, набора или строки) или других итерируемых объектов. Перебор последовательности называется обходом.

Пример:

for number in numbers:
    print(number)

Самый простой способ суммировать элементы в списке с помощью цикла Python for включает инициализацию переменной для хранения суммы, затем перебор списка и добавление каждого элемента в эту переменную.

Рассмотрим список самых высоких температур, когда-либо зарегистрированных в пяти штатах США(в градусах по Фаренгейту):

temperatures = [134, 128, 124, 118, 115]  # CA, AZ, NV, TX, KS respectively

total = 0
for temperature in temperatures:
    total += temperature
print("The sum of the highest recorded temperatures is: ", total)

В этом примере используются самые высокие зарегистрированные температуры из пяти разных штатов. Цикл for Python перебирает каждую температуру в списке и добавляет ее к общей переменной. Окончательный оператор печати отображает сумму этих температур.

Выход:

Использование цикла For 

Использование Enumerate

Функцию Python enumerate() можно использовать в цикле for для перебора чего-либо и получения автоматического счетчика.

Вот как вы можете использовать его для суммирования элементов в списке. Рассмотрим список, представляющий население(в миллионах) пяти крупных городов США.

populations = [8.4, 4.0, 2.7, 2.7, 1.7]  # NYC, LA, Chicago, Houston, Phoenix respectively

total = 0
for i, population in enumerate(populations):
    total += population
print("The total population of the five cities is: ", total, "million")

В этом примере используется население пяти крупных городов США. Функция перечисления Python используется для получения индекса(i) и значения из списка(населения) для каждой итерации цикла Python for. Мы используем численность населения только для прибавления к общей сумме. В окончательном печатном отчете указана общая численность населения этих городов.

Выход:

Использование Enumerate 

Функция range()

Другой подход к суммированию элементов в списке с помощью цикла Python for — это использование функции Python range(), которая генерирует последовательность чисел.

Рассмотрим список длин (в милях) пяти самых длинных рек США.

rivers = [2530, 2460, 2348, 2320, 2068]  # Missouri, Mississippi, Yukon, Rio Grande, Colorado respectively

total = 0
for i in range(len(rivers)):
    total += rivers[i]
print("The total length of the five longest rivers is: ", total, "miles")

Здесь у нас есть список длин пяти самых длинных рек США. Цикл for Python в сочетании с функциями Python range() и len() генерирует индекс(i) для каждой итерации. Этот индекс используется для доступа к значению из списка (rivers[i]), которое затем добавляется к общей сумме. В окончательном печатном виде указана общая длина этих рек.

Выход:

Функция range()

С разрезанием списка

Вы также можете использовать нарезку списка в цикле Python for для суммирования элементов в списке. Вот пример: рассмотрим список, представляющий количество национальных парков в нескольких штатах США.

national_parks = [9, 8, 5, 4, 4]  # California, Alaska, Utah, Colorado, Washington respectively

total = 0
for park in national_parks[:]:  # A copy of the list is made.
    total += park
print("The total number of national parks in these states is: ", total)

В этом примере используется список количества национальных парков в нескольких штатах. Цикл for Python перебирает копию исходного списка (созданного путем разрезания с помощью [:]), добавляя каждое число к общему числу.

Этот метод особенно полезен, если вам нужно изменить исходный список во время итерации по нему. В окончательном печатном отчете указано общее количество национальных парков в этих штатах.

Выход:

С разрезанием списка

Добавить комментарий