Подготовка окружения
- Создайте папку
lesson_31. - Создайте файлы
task_1.py,task_2.pyи так далее. - Запускайте файл командой
python task_1.py. - После решения измените входные данные и убедитесь, что логика не привязана только к примеру.
Домашнее задание 1. Разбор ДЗ 15: одно слово
Повторите фильтрацию строк без пробелов и приведение к нижнему регистру.
text_list = ["Hello", "Python Programming", "World", "Advanced Topics", "Simple"]
processed = [text.lower() for text in text_list if len(text.split()) == 1]
print("Обработанный список:", processed)Домашнее задание 2. Разбор ДЗ 15: цены
Добавьте новую цену во вложенные списки товаров и выведите таблицу.
products = [["Laptop", 1200], ["Mouse", 25], ["Keyboard", 75], ["Monitor", 200]]
discount = 17
for product in products:
product.append(product[1] * (1 - discount / 100))
for name, old_price, new_price in products:
print(f"{name:<10} {old_price:>8.2f}$ {new_price:>8.2f}$")Домашнее задание 3. Разбор ДЗ 16: скобки
Проверьте правильность скобок через стек.
from collections import deque
string = "([({}()){}])"
pairs = {")": "(", "]": "[", "}": "{"}
stack = deque()
valid = True
for char in string:
if char in pairs.values():
stack.append(char)
elif char in pairs and (not stack or stack.pop() != pairs[char]):
valid = False
break
print("Валидны:", valid and not stack)