Условные операторы и их особенности(повторения)

Можно ли использовать 2 раза подряд if,а затем сразу же else?


Ответы (3 шт):

Автор решения: МихаилПитон

Если вам нужно чтобы else: работал сразу для двух if:, то можно так:

if "первое условие" or/and "второе условие":
   print()
else:

Вот пример:

if s == 10 and (и) j == 12:

   print(222)

else:
   print(hhh)
→ Ссылка
Автор решения: CrazyElf

Отвечаю больше на комментарий, чем на сам вопрос. Да, нужно использовать if ... elif ... else:

if условие:
    ...
elif условие:
    ...
else:
    ...

Именно elif и позволяет понять, что else относится и к текущему elif и к предыдущему if. Потому что вполне может быть, что else нужно только в последнем if:

if условие:
    ...
if условие:
    ...
else:
    ...

Как-то нужно отличать этот случай от предыдущего. Именно поэтому и сделали специально для такого варианта elif, который является аналогом else if из некоторых других языков.

→ Ссылка
Автор решения: Dezmonder

Согласен с предыдущими комментаторами, что нужен конкретный пример, что вы хотите сделать. Однако распишу чуть-чуть структуру. Так как и elif и два if подряд могут быть полезны для разных задач.

if True:
    print('hello')
if True:
    print('world')
else:
    print('print')

В этом случае, у нас проверяется первое условие (True), потом проверяется второе условие (True), и до else код не доходит. Соответственно код выводит

hello
world 

Если мы заменим второй if на elif

elif True:
    print('world')

То после проверки первого условия код выйдет из конструкции if-else, и выведет только "hello".

Так что, если вам нужно провести несколько операций, которые не зависят друг от друга, то используйте несколько if (однако else отработает только для того if, после которого написан). Если вам нужно сделать одну операцию, то лучше использовать if-elif-else. Ну и не забывайте про or/and.

→ Ссылка