Как вывести номер элемента списка питон

Примеры работы со списками Python

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

Создать списки Python

Для создания списка Python нужно заключить элементы в квадратные скобки:

Список может выглядеть так:

Можно смешивать типы содержимого:

Поддерживаются вложенные списки как в примере выше.

Получать доступ к любому элементу списка можно через его индекс. В Python используется система индексации, начиная с нуля.

Принцип похож на строки.

Изменение списка

Списки — это изменяемые объекты, поэтому их элементы могут изменяться, или же может меняться их порядок.

Если есть такой список:

То его третий элемент можно изменить следующим образом:

Если сейчас вывести его на экран, то он будет выглядеть вот так:

Если индекс — отрицательное число, то он будет считаться с последнего элемента.

Вывод этого кода — ‘пять’.

Проход (итерация) по списку

Читать элементы списка можно с помощью следующего цикла:

Таким образом можно читать элементы списка. А вот что касается их обновления:

Результат будет следующим:

Функция len() используется для возврата количества элементов, а range() — списка индексов.

Стоит запомнить, что вложенный список — это всегда один элемент вне зависимости от количества его элементов.

Результат кода выше — 5 .

Срез списка

Можно получить срез списка с помощью оператора ( : ):

Результат кода выше — [‘два’, ‘три’]

Если убрать первое число, от срез будет начинаться с первого элемента, а если второе — с последнего.

Если убрать числа и оставить только двоеточие, то скопируется весь список.

Результат этого года:

Поскольку списки изменяемые, менять элементы можно с помощью оператора среза:

Вставить в список

Метод insert можно использовать, чтобы вставить элемент в список:

Индексы для вставляемых элементов также начинаются с нуля.

Добавить в список

Метод append можно использовать для добавления элемента в список:

Можно добавить и больше одного элемента таким способом:

При этом list_2 не поменяется.

Отсортировать список

Для сортировки списка нужно использовать метод sort .

Перевернуть список

Можно развернуть порядок элементов в списке с помощью метода reverse :

Индекс элемента

Метод index можно использовать для получения индекса элемента:

Если в списке больше одного такого же элемента, функция вернет индекс первого.

Удалить элемент

Удалить элемент можно, написав его индекс в методе pop :

Если не указывать индекс, то функция удалит последний элемент.

Элемент можно удалить с помощью метода remove .

Оператор del можно использовать для тех же целей:

Можно удалить несколько элементов с помощью оператора среза:

Функции агрегации

В Python есть некоторые агрегатные функции:

sum() работает только с числовыми значениями.

А max() , len() и другие можно использовать и со строками.

Сравнить списки

В Python 2 сравнить элементы двух списком можно с помощью функции cmp :

Она вернет -1 , если списки не совпадают, и 1 в противном случае.

В Python 3 для этого используется оператор ( == ):

Результат не совпадают .

Математические операции на списках:

Для объединения списков можно использовать оператор ( + ):

Список можно повторить с помощью оператора умножения:

Списки и строки

Для конвертации строки в набор символов, можно использовать функцию list :

Функция list используется для того, чтобы разбивать строку на отдельные символы.

Можно использовать метод split для разбития строки на слова:

Она возвращает обычный список, где с каждым словом можно взаимодействовать через индекс.

Символом разбития может служить любой знак, а не только пробел.

Результат будет аналогичен:

Объединить список в строку

Обратный процесс — объединение элементов списка в строку.

Это делается с помощью метода join :

Результат Monty Python .

Алиасинг (псевдонимы)

Когда две переменные ссылаются на один и тот же объект:

Алиасинг значит, что на объект ссылается больше одного имени.

Следующий пример показывает, как меняются изменяемые списки:

Изменился список list_2 , но поскольку он ссылается на один и тот же объект, то оригинальный список тоже поменялся.
Использовать “псевдонимы” при работе со списками не рекомендуется.
В целом, работать со списками в Python очень просто.

Источник

Списки (list). Функции и методы списков

Сегодня я расскажу о таком типе данных, как списки, операциях над ними и методах, о генераторах списков и о применении списков.

Что такое списки?

Списки в Python — упорядоченные изменяемые коллекции объектов произвольных типов (почти как массив, но типы могут отличаться).

Чтобы использовать списки, их нужно создать. Создать список можно несколькими способами. Например, можно обработать любой итерируемый объект (например, строку) встроенной функцией list:

Список можно создать и при помощи литерала:

Как видно из примера, список может содержать любое количество любых объектов (в том числе и вложенные списки), или не содержать ничего.

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

Возможна и более сложная конструкция генератора списков:

Но в сложных случаях лучше пользоваться обычным циклом for для генерации списков.

Функции и методы списков

Создать создали, теперь нужно со списком что-то делать. Для списков доступны основные встроенные функции, а также методы списков.

Таблица «методы списков»

Метод Что делает
list.append(x) Добавляет элемент в конец списка
list.extend(L) Расширяет список list, добавляя в конец все элементы списка L
list.insert(i, x) Вставляет на i-ый элемент значение x
list.remove(x) Удаляет первый элемент в списке, имеющий значение x. ValueError, если такого элемента не существует
list.pop([i]) Удаляет i-ый элемент и возвращает его. Если индекс не указан, удаляется последний элемент
list.index(x, [start [, end]]) Возвращает положение первого элемента со значением x (при этом поиск ведется от start до end)
list.count(x) Возвращает количество элементов со значением x
list.sort(Как вывести номер элемента списка питон) Сортирует список на основе функции
list.reverse() Разворачивает список
list.copy() Поверхностная копия списка
list.clear() Очищает список

Нужно отметить, что методы списков, в отличие от строковых методов, изменяют сам список, а потому результат выполнения не нужно записывать в эту переменную.

И, напоследок, примеры работы со списками:

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

Источник

Списки, кортежи и словари

Список

Для работы с наборами данных Python предоставляет такие встроенные типы как списки, кортежи и словари.

Список (list) представляет тип данных, который хранит набор или последовательность элементов. Для создания списка в квадратных скобках ([]) через запятую перечисляются все его элементы. Во многих языках программирования есть аналогичная структура данных, которая называется массив. Например, определим список чисел:

Также для создания списка можно использовать конструктор list() :

Оба этих определения списка аналогичны — они создают пустой список.

Конструктор list для создания списока может принимать другой список:

Для обращения к элементам списка надо использовать индексы, которые представляют номер элемента в списка. Индексы начинаются с нуля. То есть второй элемент будет иметь индекс 1. Для обращения к элементам с конца можно использовать отрицательные индексы, начиная с -1. То есть у последнего элемента будет индекс -1, у предпоследнего — -2 и так далее.

Если необходимо создать список, в котором повторяется одно и то же значение несколько раз, то можно использовать символ звездочки *. Например, определим список из шести пятерок:

Кроме того, если нам необходим последовательный список чисел, то для его создания удобно использовать функцию range , которая имеет три формы:

range(end) : создается набор чисел от 0 до числа end

range(start, end) : создается набор чисел от числа start до числа end

range(start, end, step) : создается набор чисел от числа start до числа end с шагом step

Например, следующие два определения списка будут аналогичны, но за счет функции range мы сокращаем объем кода:

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

Перебор элементов

Для перебора элементов можно использовать как цикл for, так и цикл while.

Перебор с помощью цикла for:

Здесь вместо функции range мы сразу можем подставить имеющийся список companies.

Перебор с помощью цикла while:

Для перебора с помощью функции len() получаем длину списка. С помощью счетчика i выводит по элементу, пока значение счетчика не станет равно длине списка.

Сравнение списков

Два списка считаются равными, если они содержат один и тот же набор элементов:

В данном случае оба списка будут равны.

Методы и функции по работе со списками

Для управления элементами списки имеют целый ряд методов. Некоторые из них:

append(item) : добавляет элемент item в конец списка

insert(index, item) : добавляет элемент item в список по индексу index

remove(item) : удаляет элемент item. Удаляется только первое вхождение элемента. Если элемент не найден, генерирует исключение ValueError

clear() : удаление всех элементов из списка

index(item) : возвращает индекс элемента item. Если элемент не найден, генерирует исключение ValueError

pop([index]) : удаляет и возвращает элемент по индексу index. Если индекс не передан, то просто удаляет последний элемент.

count(item) : возвращает количество вхождений элемента item в список

sort(Как вывести номер элемента списка питон) : сортирует элементы. По умолчанию сортирует по возрастанию. Но с помощью параметра key мы можем передать функцию сортировки.

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

Кроме того, Python предоставляет ряд встроенных функций для работы со списками:

len(list) : возвращает длину списка

sorted(list, Как вывести номер элемента списка питон) : возвращает отсортированный список

min(list) : возвращает наименьший элемент списка

max(list) : возвращает наибольший элемент списка

Добавление и удаление элементов

Для добавления элемента применяются методы append() и insert , а для удаления — методы remove() , pop() и clear() .

Проверка наличия элемента

Если определенный элемент не найден, то методы remove и index генерируют исключение. Чтобы избежать подобной ситуации, перед операцией с элементом можно проверять его наличие с помощью ключевого слова in :

Выражение item in companies возвращает True, если элемент item имеется в списке companies. Поэтому конструкция if item in companies может выполнить последующий блок инструкций в зависимости от наличия элемента в списке.

Подсчет вхождений

Если необходимо узнать, сколько раз в списке присутствует тот или иной элемент, то можно применить метод count() :

Сортировка

Для сортировки по возрастанию применяется метод sort() :

Если необходимо отсортировать данные в обратном порядке, то мы можем после сортировки применить метод reverse() :

При сортировке фактически сравниваются два объекта, и который из них «меньше», ставится перед тем, который «больше». Понятия «больше» и «меньше» довольно условны. И если для чисел все просто — числа расставляются в порядке возрастания, то для строк и других объектов ситуация сложнее. В частности, строки оцениваются по первым символам. Если первые символы равны, оцениваются вторые символы и так далее. При чем цифровой символ считается «меньше», чем алфавитный заглавный символ, а заглавный символ считается меньше, чем строчный. Подробнее про сравнение строк описывалось в статье Операции со строками.

Таким образом, если в списке сочетаются строки с верхним и нижним регистром, то мы можем получить не совсем корректные результаты, так как для нас строка «bob» должна стоять до строки «Tom». И чтобы изменить стандартное поведение сортировки, мы можем передать в метод sort() в качестве параметра функцию:

Кроме метода sort мы можем использовать встроенную функцию sorted , которая имеет две формы:

sorted(list) : сортирует список list

sorted(list, key) : сортирует список list, применяя к элементам функцию key

При использовании этой функции следует учитывать, что эта функция не изменяет сортируемый список, а все отсортированные элементы она помещает в новый список, который возвращается в качестве результата.

Минимальное и максимальное значения

Встроенный функции Python min() и max() позволяют найти минимальное и максимальное значения соответственно:

Копирование списков

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

Это так называемое «поверхностное копирование» (shallow copy). И, как правило, такое поведение нежелательное. И чтобы происходило копирование элементов, но при этом переменные указывали на разные списки, необходимо выполнить глубокое копирование (deep copy). Для этого можно использовать метод deepcopy() , который определен во встроенном модуле copy :

Копирование части списка

Если необходимо скопировать не весь список, а только его какую-то определенную часть, то мы можем применять специальный синтаксис. который может принимать следующие формы:

list[:end] : через параметр end передается индекс элемента, до которого нужно копировать список

list[start:end] : параметр start указывает на индекс элемента, начиная с которого надо скопировать элементы

list[start:end:step] : параметр step указывает на шаг, через который будут копироваться элементы из списка. По умолчанию этот параметр равен 1.

Соединение списков

Для объединения списков применяется операция сложения (+):

Списки списков

Списки кроме стандартных данных типа строк, чисел, также могут содержать другие списки. Подобные списки можно ассоциировать с таблицами, где вложенные списки выполняют роль строк. Например:

Чтобы обратиться к элементу вложенного списка, необходимо использовать пару индексов: users[0][1] — обращение ко второму элементу первого вложенного списка.

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

Источник

Читайте также:  Чем чистить каменную мойку черного цвета
Оцените статью