Программирование
Понимание List [] на примере Python
Удобная концепция структуры данных в Python
Список - это упорядоченный набор элементов. Он хранит несколько значений внутри одной переменной. Список может содержать элементы любого типа данных, такие как строки, целые числа и т. Д. Элементы списка помещаются в квадратные скобки ([]). Список может содержать элементы одного типа, разных типов или дубликаты.
Есть разные способы использования списка, давайте рассмотрим некоторые из них:
Создание списка
Создать список очень просто. В списке мы всегда должны упоминать переменную для хранения элементов. Давайте посмотрим на некоторые типы создания списка:
1. Creating empty list a = [] 2. Creating an integer/ string list a = [1, 2, 3, 4] 3.Creating a mixed list a = [5, “hello”, 65, “welcome”] 4. Creating a nested list a = [5, 8 , 3, [“hello”, “hi”], 45]
Объяснение: В приведенном выше примере приводится пример простых списков, в которых все элементы хранятся в переменной «a».
Доступ к списку
Мы создали список. Но теперь мы хотим отображать или выводить на печать только необходимые. Индексирование - это способ сделать это. Каждый элемент в списке имеет значение индекса, и с помощью этого значения можно получить доступ к элементам в списке. Есть 2 типа индексации: положительная и отрицательная. Давайте углубимся в каждую из них.
- Положительное индексирование
Положительная индексация означает, что доступ к элементам в списке осуществляется слева направо. Здесь индексы начинаются с «0». Давайте рассмотрим эту концепцию на простом примере:
a = [1, 3, 5, 8, “Hello”] ↑ ↑ ↑ ↑ ↑ 0 1 2 3 4 print(a[0]) print(a[4]) Output: 1 Hello
Пояснение: В приведенном выше списке «а» пять элементов. Здесь значение индекса начинается с «0» (слева направо) и заканчивается «4».
- В первом операторе печати вывод будет отображаться как 1, потому что «a [0]» означает, что мы обращаемся к элементу со значением индекса «0». Тот же процесс применяется и ко второму утверждению.
2. Отрицательное индексирование
Отрицательная индексация означает, что доступ к элементам в списке осуществляется справа налево. Здесь индексы начинаются с «-1». Давайте рассмотрим эту концепцию на простом примере:
a = [1, 2, 5, 4, “welcome”] ↑ ↑ ↑ ↑ ↑ -5 -4 -3 -2 -1 print(a[-1]) print(a[-3]) Output: welcome 5
Пояснение:
Здесь мы видим, что список также доступен справа налево. В первом операторе печати вывод будет отображаться как «welcome», потому что «a [-1]» означает, что мы обращаемся к элементу со значением индекса «-1». Это относится и ко второму оператору печати.
3. Вложенное индексирование
Вложенная индексация имеет ту же концепцию, что и выше. Давайте посмотрим на пример:
a = [“atom”, “cell”, [1, 2, 3]] ↑ ↑ ↑ 0 1 2 print(a[0][3]) print([2][0]) Output: m 1
Пояснение:
В 1-м операторе печати «a [0] [3]» означает, что мы обращаемся к элементу, расположенному в 0-й позиции, то есть «атому». И в этом слове мы обращаемся к элементу с индексом «3», который является буква «м» То же относится и ко второму утверждению.
4. Списки нарезки
Список нарезан для доступа к диапазону элементов. Символ «:» здесь используется для указания диапазона элементов, к которым необходимо получить доступ. Давайте рассмотрим эту концепцию на простом примере:
a = [“toy”, “lock”, 23, 65, 89] print(a[0:2]) print(a[:-2]) print(a[2:]) print(a[:]) Output: [‘toy’, ‘lock’, 23] [‘toy’, ‘lock’, 23] [23, 65, 89] [“toy”, “lock”, 23, 65, 89]
Пояснение:
В приведенной выше программе показаны различные способы доступа к диапазону элементов из списка.
- Первый оператор печати распечатывает список с позиции индекса 0–2.
- Второй оператор печати печатает все элементы из списка, кроме двух последних элементов.
- Третий оператор печати печатает все элементы из списка, начиная с позиции 2.
- Четвертый оператор печати распечатывает все элементы, присутствующие в списке.
Добавить / изменить список
В списке, если есть требование добавить в него элемент, нет необходимости делать это вручную. В список можно добавить элемент с помощью программы python. Давайте разберемся, как:
a = [56, 78, 99] a[1] = “hello” print(a) a.append(4) print(a) a.extend([5, 6, 77]) print(a) Output: [56, “hello”, 99] [56, “hello”, 99, 4] [56, “hello”, 99, 5, 5, 6, 77]
Пояснение:
В 1-м фрагменте кода слово «привет» заменяется на 78, которое находится в значении индекса 1. В этом списке значение «4» добавляется в конец списка (2-й фрагмент кода). После этого список «[5, 6, 7]» добавляется в конец списка во фрагменте кода.
Удалить или удалить элементы списка
Если есть требование удалить элемент в списке, нет необходимости делать это вручную. Нежелательные элементы в списке можно удалить с помощью программы python. Давайте разберемся на примере:
a = [45, 89, 67, 88, 65,45] del a[2] print(a) del a[2:4] print(a) del a print (a) Output: [45, 89, 88, 65, 45] [45, 89] Traceback (most recent call last): File “<string>”, line 9, in <module> NameError: name ‘a’ is not defined
Пояснение:
В первой программе будет удален элемент, имеющий значение индекса «2». Теперь из этого удаленного списка будут удалены элементы в позициях индекса со 2 по 4. И теперь последний фрагмент кода удаляет все элементы того, что осталось в списке.
Список методов
В python используется несколько методов списков, таких как append (), extend (), clear () и т. Д. Эти методы также значительно упрощают понимание программы. Давайте посмотрим на эти методы на нескольких примерах:
- append (): метод append () добавляет один элемент в конец списка.
Программа:
a = [‘e’, ‘l’, ‘i’, ’n’, ‘o’, ‘s’, ‘u’] a.append([‘k’, ‘i’, ’n’, ‘g’]) print(a) Output: [‘e’, ‘l’, ‘i’, ’n’, ‘o’, ‘s’, ‘u’, [‘k’, ‘i’, ’n’, ‘g’]]
2. extend (): метод extend () добавляет любое количество элементов из указанного списка в конец списка.
Программа:
a = [‘p’, ‘l’, ‘a’, ’n’, ‘t’, ‘s’, ‘s’] a.extend([‘k’, ‘i’, ’n’, ‘g’]) print(a) Output: [‘p’, ‘l’, ‘a’, ’n’, ‘t’, ‘s’, ‘s’, ‘k’, ‘i’, ’n’, ‘g’]
3. clear (): Метод clear () удаляет все элементы, присутствующие в списке.
Программа:
a = [‘t’, ‘o’, ‘y’] a.clear() Output: []
4. remove (): метод remove () удаляет один элемент / элемент из списка.
Программа:
a = [‘t’, ‘o’, ‘y’] a.remove(‘y’) print(a) Output: [‘t’, ‘o’]
5. pop (): Метод pop () удаляет и возвращает последнее значение либо из списка, либо из заданного значения индекса.
Программа:
a = [‘t’, ‘o’, ‘y’, ‘s’] print(a.pop(3)) Output: s
6. insert (): Метод insert () вставляет элемент по заданному индексу.
Программа:
num = [34, 35, 37] num.insert(2, 36) print(num) Output: [34, 35, 36, 37]
7. index (): Метод index () возвращает первый совпавший элемент в списке.
Программа:
num = [34, 35, 38] print(num.index(38)) Output: 2
8. count (): Метод count () возвращает количество элементов, переданных в качестве аргумента.
Программа:
d = [1,2,3,4,3,5,3] print(d.count(3)) Output: 3
9. sort (): Метод sort () сортирует список в порядке возрастания.
Программа:
r = [5,66,3,8,1] r.sort() print(r) Output: [1, 3, 5, 8, 66]
10. reverse (): Метод reverse () меняет порядок элементов, представленных в списке.
Программа:
e = [1, 3, 5, 8, 66] e.reverse() print(e) Output: [66, 8, 5, 3, 1]
Тест на членство в списке
Тест на членство в списке - это тест, чтобы проверить, присутствует ли определенный элемент в списке или нет.
Программа:
animal = [ ‘a’, ’n’, ‘i’, ‘t’, ‘a’, ‘l’, ‘y’] print(‘a’ in animal) print(‘b’ in animal) Output True False
Пояснение:
В приведенной выше программе первый оператор проверяет, присутствует ли элемент «a» в списке. Поскольку «a» находится в списке, он возвращает результат как True. Аналогичный процесс применяется и ко второму утверждению.
Итерация с использованием списка
Итерация с использованием списка означает использование циклов for. Цикл for помогает распечатать оператор более одного раза. Давайте рассмотрим эту концепцию на простом примере:
for animal in ["Tiger", "Lion", "Hyena", "Zebra"]: print(animal, “is an animal”) Output: Tiger is an animal Lion is an animal Hyena is an animal Zebra is an animal
Объяснение: Вышеупомянутая программа представляет собой циклическую программу (с использованием цикла for). Здесь программа печатает вывод до конца списка.
Надеюсь, статья вам понравилась. Свяжитесь со мной в моих LinkedIn и twitter.
Рекомендуемые статьи
1. NLP - от нуля до героя с Python
2. Структуры данных Python Типы данных и объекты
3. Концепции обработки исключений в Python
4. Почему LSTM более полезен, чем RNN в глубоком обучении?
5. Нейронные сети: рост рекуррентных нейронных сетей
6. Полностью объясненная линейная регрессия с помощью Python
7. Полностью объясненная логистическая регрессия с помощью Python
8. Различия между concat (), merge () и join () в Python
9. Преобразование данных в Python - часть 1
10. Матрица путаницы в машинном обучении »