Изучение Python: списки, наборы и кортежи

Изучение Python Программирование и разработка

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

Реальным примером структуры данных Python в действии является банковская очередь, в которой все выстраиваются в очередь для обслуживания представителем банка на основе принципа FIFO (First In, First Out). Это означает, что человек в начале очереди будет обслужен первым, а последний человек в очереди будет обслужен последним. И наоборот, стопка тарелок, в которой последняя добавленная тарелка удаляется первой, осуществляется по принципу LIFO (последним пришел/первым вышел), который гарантирует, что последний элемент будет извлечен первым, и наоборот. Вы можете применять эти алгоритмы к большему количеству ситуаций из реальной жизни, когда освоите их. Эта статья предназначена для начинающих, так что не волнуйтесь, если вы новичок в Python.

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

Список в Python — это встроенная структура данных, которая позволяет нам последовательно хранить разные типы данных. В программировании на Python список содержит адреса, присвоенные каждому элементу в списке. Эти адреса известны как индексы. По умолчанию значение индекса непустого списка начинается с 0. Кроме того, списки не следует путать со связанными списками, поскольку последние не хранятся последовательно в памяти, а используют указатели и узлы для ссылки на данные.

Читайте также:  Как установить WordPress: 3 простых шага

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

Чтобы помочь нам лучше понять, давайте воспользуемся примером, в котором мы хотим создать список, содержащий фрукты. Эти элементы будут заключены в квадратные скобки []и разделены запятой. Код ниже показывает наш список фруктов:

fruits_list = [‘Apple’,’Banana’,’Pineapple’,’Orange’,’Strawberry’,’Kiwi’,’Guava’]
print(fruits_list)

Из приведенного выше примера видно, что наш список фруктов начинается Appleи заканчивается на Guava. Если мы хотим повторить элемент, мы можем это сделать, потому что списки изменяемы и допускают дублирование. Двумя ключевыми отличительными чертами списков являются то, что они упорядочены и допускают дублирование элементов.

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

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

Давайте используем наш пример выше, чтобы выполнить эти операции:

Iteration

Мы можем использовать определенные операции, например, print()для перебора нашего списка. Основываясь на нашем примере, мы можем перебирать каждый элемент в списке, используя здесь цикл for:

fruits_list = [ ‘Apple’, ‘Banana’, ‘Pineapple’, ‘Orange’, ‘Strawberry’, ‘Kiwi’, ‘Guava’]
for fruit in fruits_list:
 print(fruit)

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

Accessing elements

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

fruits_list = [ ‘Apple’, ‘Banana’, ‘Pineapple’, ‘Orange’, ‘Strawberry’, ‘Kiwi’, ‘Guava’]
print(fruits_list[2])

Здесь мы передали значение индекса 2для доступа к элементу в этой позиции. Помните, что индексы в списках начинаются с 0, а не с 1.

Читайте также:  Как объединить несколько веб-приложений Node.js?

Modifying elements

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

fruits_list = [ ‘Apple’, ‘Banana’, ‘Pineapple’, ‘Orange’, ‘Strawberry’, ‘Kiwi’, ‘Guava’]
fruits_list.append(‘Pear’)
print(fruits_list)

Мы также можем удалить элементы по их значению в списке с помощью remove()функции:

fruits_list = [ ‘Apple’, ‘Banana’, ‘Pineapple’, ‘Orange’, ‘Strawberry’, ‘Kiwi’, ‘Guava’]
fruits_list.remove(‘Banana’)
print(fruits_list)

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

fruits_list = [ ‘Apple’, ‘Banana’, ‘Pineapple’, ‘Orange’, ‘Strawberry’, ‘Kiwi’, ‘Guava’]
fruits_list[3] = ‘Grapes’
print(fruits_list)

More functions

Другие методы, используемые при работе со списками:

  • len() возвращает длину списка
  • count() отображает количество переданного значения списка
  • sort () преобразует несортированный список в отсортированный список

Что такое кортежи?

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

Мы также заключаем кортеж в круглые, ()а не квадратные скобки []и разделяем их запятой.

Давайте углубимся в пример:

fruits_tuple = (‘Apple’,’Banana’,’Pineapple’,’Orange’,’Strawberry’,’Kiwi’,’Guava’)
print(fruits_tuple)

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

Доступ к элементам кортежа

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

Рассмотрим пример ниже:

fruits_tuple = (‘Apple’,’Banana’,’Pineapple’,’Orange’,’Strawberry’,’Kiwi’,’Guava’)
print(fruits_tuple[2])
print(fruits_tuple[-1])

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

Точно так же мы можем перебирать каждый элемент кортежа. Мы использовали цикл for в приведенном ниже примере для перебора нашего кортежа:

fruits_tuple = (‘Apple’, ‘Banana’, ‘Pineapple’, ‘Orange’, ‘Strawberry’, ‘Kiwi’, ‘Guava’)
for i in fruits_tuple:
 print(i)

Итерация кортежей в Python может выполняться по многим причинам, например, для проверки длины кортежа, доступа к определенному типу данных и так далее.

Читайте также:  Оператор SQL WHERE: практическое руководство

Что такое наборы?

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

Давайте посмотрим на набор Python ниже:

employee_set = {‘Charlie Brown’,’Kaylee Rust’,’Holy Ronald’,’Kris Troy’,’Georgina Depp’}
print(employee_set)

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

Изменение элементов набора

Поскольку мы знаем, что наборы изменяемы, мы можем изменить их по своему выбору. Мы можем использовать add(), чтобы добавить элемент в набор и remove()удалить элемент из набора.

Например:

employee_set = {‘Charlie Brown’,’Kaylee Rust’,’Holy Ronald’,’Kris Troy’,’Georgina Depp’}
employee_set.add(‘Kamala Haris’)
print(employee_set)

Чтобы использовать remove() метод на нашем наборе, мы можем сделать следующее:

employee_set = {‘Charlie Brown’,’Kaylee Rust’,’Holy Ronald’,’Kris Troy’,’Georgina Depp’}
employee_set.remove(‘Kaylee Rust’)
print(employee_set)

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

Более распространенные методы, используемые в наборах, включают:

  • len() измеряет длину набора
  • clear() очищает содержимое набора
  • update() добавляет несколько элементов в набор

Списки против наборов против кортежей: различия и сходства

Вам понравилось изучать списки, кортежи и множества Python? Подведем итоги наших выводов по всем трем структурам данных:

Списки Кортежи Наборы
использует квадратные скобки [] использует скобки () использует фигурные скобки {}
дубликаты разрешены дубликаты разрешены дубликаты не допускаются
изменчивый неизменный изменчивый
упорядоченный упорядоченный неупорядоченный

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

Оцените статью
bestprogrammer.ru
Добавить комментарий