М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет54/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   50   51   52   53   54   55   56   57   ...   334
Байланысты:
Изучаем Python


Глава 4 • Работа со списками
Простая статистика с числовыми списками
Некоторые функции Python предназначены для работы с числовыми списками. 
Например, вы можете легко узнать минимум, максимум и сумму числового списка:
>>> 
digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
>>> 
min(digits)
0
>>> 
max(digits)
9
>>> 
sum(digits)
45
ПРИМЕЧАНИЕ
В примерах этой главы используются короткие списки чисел, но это 
делается только для того, чтобы данные помещались на странице . Примеры также бу-
дут работать и в том случае, если список содержит миллионы чисел .
Генераторы списков
Описанный выше способ генерирования списка 
squares
состоял из трех или четырех 
строк кода. 
Генератор списка
(list comprehension) позволяет сгенерировать тот же 
список всего в одной строке. Генератор списка объединяет цикл 
for
и создание новых 
элементов в одну строку и автоматически присоединяет к списку все новые элемен-
ты. Учебники не всегда рассказывают о генераторах списка начинающим программи-
стам, но я привожу этот материал, потому что вы с большой вероятностью встретите 
эту конструкцию, как только начнете просматривать код других разработчиков.
В следующем примере список квадратов, знакомый вам по предыдущим примерам, 
строится с использованием генератора списка:
squares.py
squares = [value**2 for value in range(1,11)]
print(squares)
Чтобы использовать этот синтаксис, начните с содержательного имени списка, 
например 
squares
. Затем откройте квадратные скобки и определите выражение 
для значений, которые должны быть сохранены в новом списке. В данном приме-
ре это выражение 
value**2
, которое возводит значение во вторую степень. Затем 
напишите цикл 
for
для генерирования чисел, которые должны передаваться вы-
ражению, и закройте квадратные скобки. Цикл 
for
в данном примере — 
for
value
in
range(1,11)
— передает значения с 1 до 10 выражению 
value**2
. Обратите вни-
мание на отсутствие двоеточия в конце команды 
for
.
Результатом будет уже знакомый вам список квадратов:
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
Чтобы успешно писать собственные генераторы списков, необходим опреде-
ленный опыт. Тем не менее, как только вы освоитесь с созданием обычных 


Работа с частью списка
75
списков, вы оцените возможности генераторов. Когда после очередного трех-
четырехстрочного блока вам это надоест, подумайте о написании собственных 
генераторов списков.


Достарыңызбен бөлісу:
1   ...   50   51   52   53   54   55   56   57   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет