🐍 Python: Практические задания

Тема: Работа со словарями

📊 Прогресс:

0/0

🟢 Уровень 1: Создание и базовый доступ

Задача 1.1: Создание словаря питомца
Создайте словарь pet с ключами: "name", "type", "age". Заполните значениями "Барсик", "кот", 3.
💡 Подсказка:
Используйте синтаксис словаря с фигурными скобками.
✅ Решение:
pet = {"name": "Барсик", "type": "кот", "age": 3}
Задача 1.2: Доступ к значению
Дан словарь: book = {"title": "1984", "author": "Джордж Оруэлл", "year": 1949}
Выведите название книги (значение по ключу "title").
💡 Подсказка:
Используйте квадратные скобки или метод .get().
✅ Решение:
book = {"title": "1984", "author": "Джордж Оруэлл", "year": 1949}
print(book["title"])
# или
print(book.get("title"))
Задача 1.3: Добавление элемента
Дан словарь: car = {"brand": "Toyota", "model": "Camry"}
Добавьте ключ "year" со значением 2022.
💡 Подсказка:
Используйте присваивание по ключу.
✅ Решение:
car = {"brand": "Toyota", "model": "Camry"}
car["year"] = 2022

🟡 Уровень 2: Изменение и удаление

Задача 2.1: Изменение значения
Дан словарь: product = {"name": "Ноутбук", "price": 45000, "stock": 5}
Измените цену на 42000.
💡 Подсказка:
Присвойте новое значение по ключу "price".
✅ Решение:
product = {"name": "Ноутбук", "price": 45000, "stock": 5}
product["price"] = 42000
Задача 2.2: Удаление элемента
Дан словарь: user = {"username": "alex123", "email": "alex@mail.ru", "password": "secret"}
Удалите ключ "password" из словаря.
💡 Подсказка:
Используйте del.
✅ Решение:
user = {"username": "alex123", "email": "alex@mail.ru", "password": "secret"}
del user["password"]
Задача 2.3: Безопасный доступ
Дан словарь: weather = {"temp": 18, "humidity": 65}
Получите значение по ключу "wind_speed", если ключ отсутствует — вернуть "Нет данных".
💡 Подсказка:
Используйте метод .get() с дефолтным значением.
✅ Решение:
weather = {"temp": 18, "humidity": 65}
wind = weather.get("wind_speed", "Нет данных")
print(wind)

🟠 Уровень 3: Вложенные словари

Задача 3.1: Создание вложенного словаря
Создайте словарь computer с вложенным словарём "specs", где "ram": "16GB", "cpu": "Intel i7".
💡 Подсказка:
Вложенные словари — значения по ключам могут быть словарями.
✅ Решение:
computer = {
    "specs": {
        "ram": "16GB",
        "cpu": "Intel i7"
    }
}
Задача 3.2: Доступ к вложенному словарю
Дан словарь: store = {"info": {"name": "TechShop", "city": "Москва"}, "rating": 4.5}
Выведите название магазина из вложенного словаря.
💡 Подсказка:
Используйте две пары квадратных скобок подряд.
✅ Решение:
store = {"info": {"name": "TechShop", "city": "Москва"}, "rating": 4.5}
print(store["info"]["name"])
Задача 3.3: Словарь с координатами
Создайте словарь location с ключами "city" (значение "Санкт-Петербург") и "coords" (вложенный словарь с "lat": 59.9311, "lon": 30.3609).
💡 Подсказка:
Создайте словарь с обычным значением и вложенным словарем.
✅ Решение:
location = {
    "city": "Санкт-Петербург",
    "coords": {
        "lat": 59.9311,
        "lon": 30.3609
    }
}

🔴 Уровень 4: Методы словарей

Задача 4.1: Получение ключей
Дан словарь: colors = {"red": "#FF0000", "green": "#00FF00", "blue": "#0000FF"}
Получите и выведите список всех ключей.
💡 Подсказка:
Используйте метод .keys().
✅ Решение:
colors = {"red": "#FF0000", "green": "#00FF00", "blue": "#0000FF"}
keys = list(colors.keys())
print(keys)
Задача 4.2: Получение значений
Дан словарь: prices = {"молоко": 89, "хлеб": 45, "яйца": 120}
Получите и выведите список всех цен.
💡 Подсказка:
Используйте метод .values().
✅ Решение:
prices = {"молоко": 89, "хлеб": 45, "яйца": 120}
values = list(prices.values())
print(values)
Задача 4.3: Копирование и объединение
Даны словари: person = {"name": "Иван", "age": 30} и job = {"position": "Разработчик", "salary": 100000}
Создайте новый словарь employee, объединив данные из обоих словарей.
💡 Подсказка:
Используйте .copy() и .update().
✅ Решение:
person = {"name": "Иван", "age": 30}
job = {"position": "Разработчик", "salary": 100000}
employee = person.copy()
employee.update(job)

🟣 Уровень 5: Комплексные операции

Задача 5.1: Доступ к вложенным данным
Дан словарь: company = {"name": "TechCorp", "employees": {"developers": 50, "managers": 10, "designers": 15}}
Выведите количество разработчиков.
💡 Подсказка:
Доступ к вложенному словарю по двум ключам.
✅ Решение:
company = {
    "name": "TechCorp", 
    "employees": {
        "developers": 50, 
        "managers": 10, 
        "designers": 15
    }
}
print(company["employees"]["developers"])
Задача 5.2: Добавление в вложенный словарь
Дан словарь: game = {"title": "Minecraft", "stats": {"players": 1000, "level": 5}}
Добавьте в "stats" новую пару "score": 2500.
💡 Подсказка:
Обратитесь к вложенному словарю и добавьте новый ключ.
✅ Решение:
game = {"title": "Minecraft", "stats": {"players": 1000, "level": 5}}
game["stats"]["score"] = 2500
Задача 5.3: Инвентарь с проверкой
Дан словарь: inventory = {"яблоки": 10, "бананы": 5, "апельсины": 7}
Проверьте наличие "груши" в инвентаре. Если нет - добавьте с количеством 3. Затем выведите количество груш.
💡 Подсказка:
Используйте оператор in для проверки наличия ключа.
✅ Решение:
inventory = {"яблоки": 10, "бананы": 5, "апельсины": 7}
if "груши" not in inventory:
    inventory["груши"] = 3
print(inventory["груши"])

💡 Полезные советы