TGViewer
Python Portal Python Portal @pythonportal · 50.4K subscribers
Post #4710 10K
Совет по чистому коду на Python

Используй тернарный оператор inline if для простых условий, особенно когда нужно присвоить значение на основе быстрой проверки

Так код становится короче и читается проще, главное не усложнять конструкцию

Пример

class Order:
def __init__(self, user_is_premium, order_total, delivery_type):
self.user_is_premium = user_is_premium
self.order_total = order_total
self.delivery_type = delivery_type

# Если пользователь премиум — скидка 20%, иначе 5%
self.discount = 0.2 if user_is_premium else 0.05

# Если самовывоз — доставка 0, иначе 5
self.delivery_fee = 0 if delivery_type == "self-pickup" else 5.0


> self.discount = 0.2 if user_is_premium else 0.05 - здесь проверка идёт прямо в строке присваивания
Если user_is_premium == True, то в self.discount попадёт 0.2, иначе 0.05

> self.delivery_fee = 0 if delivery_type == "self-pickup" else 5.0
Аналогично, если delivery_type равен "self-pickup", стоимость доставки — 0, иначе — 5.0

Это компактнее, чем писать через if/else в несколько строк, и код остаётся читаемым, пока условия простые

👉 @PythonPortal
  • ❤ 30
  • 👍 21
  • 🤝 4
  • 🔥 1
  • 🤔 1
More from @pythonportal
  1. Oct 13, 2026Если ищете хороший видеокурс по 3D-математике для игр, в котором сочетаются теория и практ…
  2. Oct 13, 2026👁👁 Тестовый собес на Python с разработчиком из Яндекса [+ ответы на 50 сложных вопросов…
  3. Oct 13, 2026NVIDIA действительно устранила одно из главных ограничений голосового ИИ. Компания открыла…
  4. Oct 12, 2026«Матричное дифференциальное исчисление для машинного обучения и не только» — бесплатный ку…
  5. Oct 12, 2026Где искать работу, если хочется большего? Рынок труда сейчас не самый простой, поэтому ино…
  6. Oct 12, 2026Можно буквально ввести предложение и посмотреть, как Transformer обрабатывает его. Этот ин…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →