Искать
Вы превысили запрос на
0 знаков

20. Дополнительно про списки в Python

Не пройден
0
0

Кратко

- В этом уроке вы узнаете про обратное индексирование, познакомитесь с методами index, clear, reverse, count и другими.

- Для примера работы методов были использованы списки, состоящие из чисел.

- Не забывайте, списки могут содержать любые объекты: числа, строки, другие списки и вообще все что угодно.

- Список может быть неоднородным.

- Элементы списка можно вызывать не только с начала, но и с конца: обратное индексирование.

- В отличие от обычного индексирования, обратное начинается не с 0, а с -1.

- Обратное индексирование очень полезно в некоторых ситуациях и повышает эффективность кода.

- Например, в большом списке с изменяемой длиной вам не придется считать элементы с самого начала, чтобы добраться до последнего.

- Метод index() используется для определения индекса элемента по его значению.

- Метод clear() очищает весь список.

- Метод reverse() меняет порядок следования элементов списка на обратный.

- Метод count() подсчитывает количество вхождений элемента в список.

- Функции min() и max() возвращают минимальное и максимальное значения из списка соответственно.

- Метод snuffle() из модуля random перемешивает элементы списка в случайном порядке.

В предыдущих уроках вы узнали, как получить срез списка и какие есть основные методы. В этом уроке вы узнаете про обратное индексирование, познакомитесь с методами indexclearreversecount и другими. Для примера работы методов были использованы списки, состоящие из чисел. Но не забывайте, что списки могут содержать любые объекты: числа, строки, другие списки и вообще все что угодно. При этом список может быть неоднородным:

Пример (python)
a = [1, 'Hello', [2, 3, 4], 2] 

Элементы списка можно вызывать не только с начала, но и с конца: обратное индексирование. В отличие от обычного индексирования, обратное начинается не с 0, а с -1. Например:

Пример (python)
a = [1, 2, 3, 4, 5]
a[-1] # => 5  

Обратное индексирование очень полезно в некоторых ситуациях и повышает эффективность кода. Например, в большом списке с изменяемой длиной вам не придется считать элементы с самого начала, чтобы добраться до последнего. Достаточно воспользоваться предыдущим примером.

Иногда необходимо определить индекс элемента, зная его значение. Для этого существует метод index(), в параметре которого указывается значение элемента, индекс которого необходимо узнать:

Пример (python)
a = [1, 2, 3, 4, 5]
a.index(2) # => 1   

Если вы передадите несуществующее значение, то будет вызвано исключение ValueError, но об исключениях вы узнаете позднее.

Как удалить конкретный элемент списка вы узнали из этого урока. А как очистить весь список? Для этого есть метод clear().

Пример (python)
a = [1, 2, 3, 4, 5]
a.clear() # => [] 

Список можно развернуть, то есть изменить порядок следования элементов на обратный при помощи метода reverse().

Пример (python)
a = [1, 2, 3, 4, 5]
a.reverse() # => [5, 4, 3, 2, 1]  

Чтобы посчитать, как часто встречается элемент в списке, можно использовать метод count(). Он возвращает 0, если такого элемента нет в списке.

Пример (python)
a = [1, 2, 2, 2, 5]
a.count(2) # => 3   

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

Пример (python)
words.reverse() 

Где words является списком, а reverse() – методом. Функция выглядит следующим образом:

Пример (python)
sum(words) 

Где words является списком, а sum – функцией.

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

Кстати, в примере выше была использована функция sum(), которая возвращает общую сумму чисел в списке. Если в списке есть что-то, кроме чисел, то функцию sum, как вы понимаете, использовать нельзя.

Так же есть функции min() и max(), которые возвращают минимальное и максимальное значение из списка, соответственно.

Напоследок вспомним про урок, где мы генерировали случайные числа. Предположим, вам необходимо перемешать элементы списка, для чего необходимо подключить модуль random и использовать метод snuffle() из этого модуля.

Пример (python)
import random
a = [1, "Hello", [3, 6, 7], 4, 5]
random.shuffle(a) # ~=> [5, 'Hello', 4, 1, [3, 6, 7]] 

Обратите внимание, список является неоднородным и элемент с индексом 2 является другим списком. После применения метода snuffle() элементы списка перемешаются в случайном (точнее псевдослучайном) порядке, но элементы списка [3, 6, 7] не будут перемешаны.

Из этого урока вы узнали об обратном индексировании списков в Python, а так же познакомились с новыми методами и функциями, которые можно использовать для работы со списками. Хотелось написать еще больше, но урок и так оказался объемным, поэтому про конкатенацию и сортировку списков узнаете в следующем уроке.

Тест

Две секундочки...

Похожие уроки Codebra

@codebra_official
Подписывайся на наш Telegram-канал!
Новости, полезный материал,
программирование и ИБ
Обработка исключений (try/except) в PythonЗнакомство с Python
Введение в раздел «Структуры данных в Python»Знакомство с Python
Типы данных в PythonЗнакомство с Python
Итоги раздела «Структуры данных в Python»Знакомство с Python
Еще о возможностях модулей в PythonЗнакомство с Python
Конкатенация и сортировка списков в PythonЗнакомство с Python
Первое знакомство с PythonЗнакомство с Python
Работа с файлами в PythonЗнакомство с Python
Переменные, комментарии и типы данных в PHPКурс по PHP
Впервые на сайте Codebra?

Извините за это всплывающее окно, меня они тоже раздражают.

Образовательный ресурс codebra.ru полностью посвящен программированию и компьютерной безопасности. Все курсы и уроки находятся на главной странице. Ради интереса можете посмотреть на содержимое курсов по Пентесту Active Directory, Python, HTML и CSS, JavaScript, C++ и другие, размещенные на главной странице.

Если что-то не нашли, то воспользуйтесь поиском по сайту, который находится на главной странице в самом верху.

Удачи в обучении!

Закрыть окно