Условные операторы и их особенности(повторения)
Можно ли использовать 2 раза подряд if,а затем сразу же else?
Ответы (3 шт):
Если вам нужно чтобы else:
работал сразу для двух if:
, то можно так:
if "первое условие" or/and "второе условие":
print()
else:
Вот пример:
if s == 10 and (и) j == 12:
print(222)
else:
print(hhh)
Отвечаю больше на комментарий, чем на сам вопрос. Да, нужно использовать if ... elif ... else
:
if условие:
...
elif условие:
...
else:
...
Именно elif
и позволяет понять, что else
относится и к текущему elif
и к предыдущему if
. Потому что вполне может быть, что else
нужно только в последнем if
:
if условие:
...
if условие:
...
else:
...
Как-то нужно отличать этот случай от предыдущего. Именно поэтому и сделали специально для такого варианта elif
, который является аналогом else if
из некоторых других языков.
Согласен с предыдущими комментаторами, что нужен конкретный пример, что вы хотите сделать. Однако распишу чуть-чуть структуру. Так как и 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.