История изменений
Исправление entrance, (текущая версия) :
Чаще всего с generator expressions, например тут поиск по dict/list:
@staticmethod
def identify(serial: str) -> Product | None:
return next((p for (s, p) in SERIAL_MAP.items() if serial.startswith(s)), None)
next((i[1] for i in parts if i[0] == "model"), None)
И чё это сразу «если вообще пользуетесь»?
Никогда что ли однострочники по приколу не писали? Я имею в виду забористые, типа
exec(__import__('zlib').decompress(__import__('base64').b64decode('{encoded}')).decode('utf8'))
Правда тут даже лямбд нет, помню были примеры ещё круче.
Когда это удобно и не нарушает читаемость кода
Пацаны, дух старой школы живёт только в говнокоде…
Исходная версия entrance, :
Чаще всего для поиска, например:
@staticmethod
def identify(serial: str) -> Product | None:
return next((p for (s, p) in SERIAL_MAP.items() if serial.startswith(s)), None)
next((i[1] for i in parts if i[0] == "model"), None)
И чё это сразу «если вообще пользуетесь»?
Никогда что ли однострочники по приколу не писали? Я имею в виду забористые, типа
exec(__import__('zlib').decompress(__import__('base64').b64decode('{encoded}')).decode('utf8'))
Правда тут даже лямбд нет, помню были примеры ещё круче.
Когда это удобно и не нарушает читаемость кода
Пацаны, дух старой школы живёт только в говнокоде…