Главная ошибка - превращать lambda в свалку логики: добавлять туда побочные эффекты, вызовы print, длинные условия и вычисления.
Такие лямбды плохо читаются, их невозможно нормально отлаживать, и они нарушают саму идею — быть короткой и чистой функцией. Всё сложное нужно выносить в обычную функцию. Подписывайся, больше фишек каждый день !
# нельзя так делать — lambda с изменением состояния
data = [1, 2, 3]
logs = []
# опасный антипаттерн
process = lambda x: logs.append(f"processed {x}") or (x * 10)
result = [process(n) for n in data]
print("RESULT:", result)
print("LOGS:", logs)