@shibanovan

Как избавиться от вложенных if?

Новичок в программировании занимаюсь больше как хобби. Хочу улучшить качество и читаемость своего кода, сейчас есть проблема со вложенными if-ми, когда нужно последовательно проверить несколько условий. Что-то вроде

if os.path.exist(a):
    if os.path.getsize(a) > 100000:
        if b<с:
            some_def(a)


Пример абстрактный, но суть. Не ясно как последовательно проверить условия (когда нельзя запихать в один if с помощью and)

Как такое обходить?
  • Вопрос задан
  • 1490 просмотров
Решения вопроса 1
@EvgeniiR
https://github.com/EvgeniiR
if(os.path.exist(a) and os.path.getsize(a) > 100000 and  b<os.path.getsize(a)):
    some_def(a)

или early return
if not os.path.exist(a):
    return;

// остальные условия
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
netpastor
@netpastor
Python developer
if not os.path.exist(a):
    return
size = os.path.getsize(a) 
if size > 100000 and b < size:
    some_def(a)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы