Добавить в корзинуПозвонить
Найти в Дзене

Основы Python: типы данных часть 2 (списки и их методы)

Приветствую всех, кто читает эту статью, сегодня обсудим ещё один ключевой тип данных, такой как списки (list), индексацию в списках и методы списков. Погнали! Списки(list) При создании программы иногда возникает необходимость хранить несколько значений в памяти для последующего использования. Именно здесь на помощь приходят списки в Python. Списки представляют собой упорядоченные коллекции, которые позволяют хранить набор значений. Они могут содержать элементы различных типов, включая числа, строки и другие списки. Рассмотрим следующий пример: num_list = [1, 2, 3, 4, 5] print(num_list) # [1, 2, 3, 4, 5] В этом примере мы создали список num_list, который содержит числа от 1 до 5, и вывели его в консоль. Индексация в списках Списки представляют собой упорядоченные коллекции, что позволяет нам легко обращаться к отдельным элементам по их индексам. Индексы в списках начинаются с нуля. Рассмотрим следующий пример: num_list = [1, 2, 3, 4, 5] print(num_list[0]) #1 В этом примере мы обращаемс

Приветствую всех, кто читает эту статью, сегодня обсудим ещё один ключевой тип данных, такой как списки (list), индексацию в списках и методы списков. Погнали!

Списки(list)

При создании программы иногда возникает необходимость хранить несколько значений в памяти для последующего использования. Именно здесь на помощь приходят списки в Python.

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

num_list = [1, 2, 3, 4, 5]

print(num_list) # [1, 2, 3, 4, 5]

В этом примере мы создали список num_list, который содержит числа от 1 до 5, и вывели его в консоль.

Индексация в списках

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

num_list = [1, 2, 3, 4, 5]

print(num_list[0]) #1

В этом примере мы обращаемся к первому элементу списка num_list по его индексу. Поскольку индексы начинаются с нуля, мы указали индекс 0, а не 1, чтобы получить доступ к первому элементу.

Отрицательная индексация в списках

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

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

Например:

num_list = [1, 2, 3, 4, 5]

print(num_list[-1]) # 5

В этом случае мы выводим последний элемент из списка num_list, то есть элемент с индексом -1. В результате получаем значение 5.

Изменение элементов списков

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

Например, рассмотрим следующий фрагмент кода:

num_list = [1, 2, 3, 4, 5]

num_list[3] = 10

print(num_list) # [1, 2, 3, 10, 5]

В этом примере мы обращаемся к элементу с индексом 3 и изменяем его значение на 10. В результате в консоль выводится список: [1, 2, 3, 10, 5].

Методы списков

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

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

2. extend() — добавляет элементы из другого списка в конец текущего списка.

3. insert() — вставляет элемент по указанному индексу в списке.

4. remove() — удаляет первый встреченный элемент из списка с определённым значением.

5. pop() — удаляет и возвращает элемент по указанному индексу (по умолчанию последний).

6. index() — возвращает индекс первого вхождения указанного элемента.

7. count() — подсчитывает, сколько раз элемент встречается в списке.

8. sort() — сортирует элементы списка в порядке возрастания.

9. reverse() — переворачивает порядок элементов в списке.

Давайте разберёмся с каждым методом на примере:

append()

num_list = [1, 2, 3, 4, 5]

num_list.append('hello')

print(num_list) #[1, 2, 3, 4, 5, 'hello']

В этом примере мы использовали метод append, чтобы добавить строку 'hello' в конец списка.

extend()

Метод extend добавляет элементы из одного списка в другой:

num_list = [1, 2, 3, 4, 5]

num_list.extend([6, 7, 8, 9, 10])

print(num_list) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

В этом примере мы использовали метод extend, чтобы объединить значения двух списков в один.

insert()

Метод insert добавляет указанный элемент в список по указанному индексу:

num_list = [1, 2, 3, 4, 5]

num_list.insert(2, 'hello')

print(num_list) #[1, 2, 'hello', 3, 4, 5]

В этом коде мы использовали метод insert, чтобы добавить строку 'hello' на место 2 индекса в списке. Из-за этого число 3, которое изначально располагалось на втором индексе, сдвинулось, уступив место строке.

remove()

Метод remove удаляет элемент с определённым значением:

word_list = ['hello', 'world', 'python', 'one', 'love']

word_list.remove('hello')

print(word_list) #['world', 'python', 'one', 'love']

В этом фрагменте кода мы использовали метод remove для удаления элемента списка со значением 'hello'. Важно отметить, что метод remove удаляет только первый элемент списка с указанным значением, а не все элементы с таким значением:

word_list = ['hello', 'world', 'python', 'hello', 'one', 'love', 'hello']

word_list.remove('hello')

print(word_list) #['world', 'python', 'hello', 'one', 'love', 'hello']

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

Ещё следует помнить, что если элемент отсутствует в списке, возникнет ошибка ValueError.

pop()

Метод pop удаляет удаляет элемент списка по его индексу:

word_list = ['hello', 'world', 'python', 'one', 'love']

word_list.pop(3)

print(word_list) #['hello', 'world', 'python', 'love']

В этом примере мы удалили из списка num_list элемент с индексом 3. Важно отметить, что метод pop не только удаляет элемент по нужному индексу, но и возвращает его:

word_list = ['hello', 'world', 'python', 'one', 'love']

del_element = word_list.pop(3)

print(del_element) #one

Здесь мы положили значение удаляемого элемента в переменную del_element, так как метод pop ещё и возвращает значение удаляемого элемента. Поэтому мы получаем в консоли значение one.

index()

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

word_list = ['hello', 'world', 'python', 'one', 'love']

index_element = word_list.index('world')

print(index_element) #1

В этом фрагменте кода мы присваиваем переменной index_element индекс строки 'world' и выводим его на экран. Важно отметить, что метод index возвращает индекс самого первого элемента, соответствующего заданному значению:

word_list = ['hello', 'world', 'world', 'python', 'one', 'world', 'love']

index_element = word_list.index('world')

print(index_element) #1

здесь мы создали в списке несколько элементов со значением 'world', но метод index возвратил только индекс самого первого с нужным значением элемента.

Также важно помнить, что метод index выдает ошибку ValueError, если элемент не найден в списке.

count()

Метод count считает количество нужных нам элементов в списке:

word_list = ['hello', 'world', 'world', 'python', 'one', 'world', 'love']

count_element = word_list.count('world')

print(count_element) #3

В этом фрагменте кода метод count подсчитывает количество строк 'world' в списке num_list. В результате мы получаем значение 3, так как в списке есть три такие строки.

sort()

Здесь всё максимально просто, sort просто сортирует список по возрастанию:

num_list = [10, 2, 1, 4, 8, 6, 5 ,7, 9, 3]

num_list.sort()

print(num_list) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Если вы хотите отсортировать список не по возрастанию, а по убыванию, то можете воспользоваться аргументом reverse=True:

num_list = [10, 2, 1, 4, 8, 6, 5 ,7, 9, 3]

num_list.sort(reverse=True)

print(num_list) #[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

Как видите, список отсортировался по убыванию.

Также методом sort можно сортировать не только списки, содержащие числа, но и списки, содержащие строки, в этом случае строки будут сортироваться по таблице ASCII, но об этом мы поговорим позже.

reverse()

Здесь тоже всё очень просто, метод reverse просто разворачивает список:

num_list = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

num_list.reverse()

print(num_list) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Как видите, список просто развернулся.

В этой статье мы рассмотрели один из ключевых типов данных в Python — список. Мы узнали о том, как работает индексация в списках, а также о базовых методах, которые используются для работы с ними. Желаю вам удачи в изучении Python и не забывайте применять полученные знания на практике!