Урок: Структуры данных
Структуры данных
Структуры данных в Python позволяют организовывать и хранить данные различными способами. В этом уроке мы рассмотрим списки, кортежи, словари и множества, а также операции и методы, которые можно с ними выполнять.
Списки и операции с ними
Списки используются для хранения упорядоченных коллекций элементов. Они могут содержать элементы любого типа и изменяться после создания.
Создание списка fruits = ["apple", "banana", "cherry"] print(fruits) # Выводит: ['apple', 'banana', 'cherry'] # Добавление элементов fruits.append("orange") print(fruits) # Выводит: ['apple', 'banana', 'cherry', 'orange'] # Вставка элемента на конкретную позицию fruits.insert(1, "blueberry") print(fruits) # Выводит: ['apple', 'blueberry', 'banana', 'cherry', 'orange'] # Удаление элементов fruits.remove("banana") print(fruits) # Выводит: ['apple', 'blueberry', 'cherry', 'orange'] # Доступ к элементам по индексу print(fruits[2]) # Выводит: cherry # Срезы print(fruits[1:3]) # Выводит: ['blueberry', 'cherry']
Кортежи и их использование
Кортежи, как и списки, используются для хранения упорядоченных коллекций элементов, но они неизменяемы после создания.
Создание кортежа colors = ("red", "green", "blue") print(colors) # Выводит: ('red', 'green', 'blue') # Доступ к элементам по индексу print(colors[1]) # Выводит: green # Кортежи можно использовать в качестве ключей словаря location = (40.7128, -74.0060) places = {location: "New York"} print(places) # Выводит: {(40.7128, -74.006): 'New York'}
Словари и методы работы с ними
Словари используются для хранения пар "ключ-значение". Ключи должны быть уникальными и неизменяемыми (например, строки, числа или кортежи), а значения могут быть любого типа.
Создание словаря person = {"name": "Alice", "age": 25, "city": "New York"} print(person) # Выводит: {'name': 'Alice', 'age': 25, 'city': 'New York'} # Доступ к значениям по ключу print(person["name"]) # Выводит: Alice # Добавление и изменение элементов person["email"] = "alice@example.com" print(person) # Выводит: {'name': 'Alice', 'age': 25, 'city': 'New York', 'email': 'alice@example.com'} # Удаление элементов del person["age"] print(person) # Выводит: {'name': 'Alice', 'city': 'New York', 'email': 'alice@example.com'} # Перебор ключей и значений for key, value in person.items(): print(f"{key}: {value}") # Выводит: # name: Alice # city: New York # email: alice@example.com
Множества и операции над ними
Множества используются для хранения уникальных элементов и поддерживают операции над множествами, такие как объединение, пересечение и разность.
Создание множества fruits = {"apple", "banana", "cherry"} print(fruits) # Выводит: {'apple', 'banana', 'cherry'} # Добавление элементов fruits.add("orange") print(fruits) # Выводит: {'apple', 'banana', 'cherry', 'orange'} # Удаление элементов fruits.remove("banana") print(fruits) # Выводит: {'apple', 'cherry', 'orange'} # Операции над множествами set1 = {1, 2, 3, 4} set2 = {3, 4, 5, 6} # Объединение union_set = set1.union(set2) print(union_set) # Выводит: {1, 2, 3, 4, 5, 6} # Пересечение intersection_set = set1.intersection(set2) print(intersection_set) # Выводит: {3, 4} # Разность difference_set = set1.difference(set2) print(difference_set) # Выводит: {1, 2}
Практическое задание
- Создайте список с несколькими элементами и выполните над ним операции добавления, удаления и срезов.
- Создайте кортеж и выведите один из его элементов по индексу.
- Создайте словарь, добавьте в него пару ключ-значение, удалите один элемент и переберите все ключи и значения.
- Создайте два множества и выполните над ними операции объединения, пересечения и разности.
Пример выполнения практического задания # Задание 1 fruits = ["apple", "banana", "cherry"] fruits.append("orange") print(fruits) # Выводит: ['apple', 'banana', 'cherry', 'orange'] fruits.remove("banana") print(fruits) # Выводит: ['apple', 'cherry', 'orange'] print(fruits[1:3]) # Выводит: ['cherry', 'orange'] # Задание 2 colors = ("red", "green", "blue") print(colors[0]) # Выводит: red # Задание 3 person = {"name": "Alice", "age": 25} person["city"] = "New York" print(person) # Выводит: {'name': 'Alice', 'age': 25, 'city': 'New York'} del person["age"] print(person) # Выводит: {'name': 'Alice', 'city': 'New York'} for key, value in person.items(): print(f"{key}: {value}") # Выводит: # name: Alice # city: New York # Задание 4 set1 = {1, 2, 3, 4} set2 = {3, 4, 5, 6} union_set = set1.union(set2) print(union_set) # Выводит: {1, 2, 3, 4, 5, 6} intersection_set = set1.intersection(set2) print(intersection_set) # Выводит: {3, 4} difference_set = set1.difference(set2) print(difference_set) # Выводит: {1, 2}
Этот урок охватывает основные структуры данных в Python, включая списки, кортежи, словари и множества, а также операции и методы работы с ними. Практикуйтесь для лучшего понимания и освоения материала.