Использование списков
У цикла for
есть специальный вариант, который может очень эффективно обрабатывать списки - давайте посмотрим на это.
Предположим, Dы хотите вычислить сумму всех значений, хранящихся в списке my_list
.
Вам нужна переменная, сумма которой будет сохранена и изначально присвоено значение 0
- ее имя будет total
. (Примечание: мы не собираемся называть его sum
, поскольку Python использует то же название для одной из своих встроенных функций: sum()
. Использование того же названия обычно считается плохой практикой.) Затем вы добавляете к нему все элементы списка с помощью цикла for
. Взгляните на фрагмент кода в редакторе.
Прокомментируем этот пример:
- списку присваивается последовательность из пяти целочисленных значений;
- переменная
i
принимает значения0
,1
,2
,3
и4
, а затем индексирует список, выбирая следующие элементы: первый, второй, третий, четвертый и пятый; - каждый из этих элементов добавляется оператором
+=
к переменнойtotal
, давая окончательный результат в конце цикла; - обратите внимание на способ использования функции
len()
- она делает код независимым от любых возможных изменений в содержимом списка.
Второй аспект цикла for
Но цикл for
может намного больше. Он может скрыть все действия, связанные с индексацией списка, и предоставить удобным способом все элементы списка.
Этот модифицированный фрагмент кода показывает, как это работает:
my_list = [10, 1, 8, 3, 5]
total = 0
for i in my_list:
total += i
print(total)
Что происходит?
- инструкция
for
определяет переменную, используемую для просмотра списка (здесьi
), за которой следует ключевое словоin
и название обрабатываемого списка (my_list
) - переменной
i
присваиваются значения всех последующих элементов списка, и процесс происходит столько раз, сколько элементов в списке; - это означает, что Вы используете переменную
i
как копию значений элементов, и вам не нужно использовать индексы; - функция
len()
здесь также не нужна