Решение 1. Проверка скобок
def is_valid_brackets(text):
pairs = {")": "(", "]": "[", "}": "{"}
stack = []
for char in text:
if char in pairs.values():
stack.append(char)
elif char in pairs:
if not stack or stack.pop() != pairs[char]:
return False
return len(stack) == 0
print(f"Скобки валидны: {is_valid_brackets('([)]')}")Если закрывающая скобка не совпала с последней открывающей, порядок нарушен.
Решение 2. Проверка знака
def check_number(num):
if num > 0:
return "Число положительное"
if num < 0:
return "Число отрицательное"
return "Число равно нулю"
print(check_number(-3))Несколько return читаются проще, чем глубокая вложенность if/else.
Решение 3. Повтор fromkeys
keys = ["x", "y"]
my_dict = {key: [] for key in keys}
my_dict["x"].append(1)
print(my_dict)Dict comprehension создаёт новый список для каждого ключа.