Условный оператор if в python
Операции сравнения
Знак | Значение |
---|---|
> | больше |
< | меньше |
>= | больше или равно |
<= | меньше или равно |
== | равно |
!= | не равно |
Проверка отсутствия значения
if a == 0: # Неверно, 0 - это число
if a == '': # Неверно, строка - это тоже тип данных
# Примеры выше неправильные, ибо переменной можно задать эти значения, то есть:
a = 0
a = ''
if a == None: # Верно
Максимальное из трех чисел
if a > b:
max = a
else:
max = b
if c > max:
max = c
elif
elif
- это:
else:
if <условие>:
boolean. True
/ False
К False
приравниваются следующие значения:
- boolean
False
None
- int
0
, float0.0
- пустая строка
''
- пустые список
[]
, кортеж()
, словарь{}
, множествоset()
Все остальные значения приравниваются к True
.
Оператор-морж :=
В Python 3.8 появился моржовый оператор (похож на моржа с бивнями, типа) с таким синтаксисом:
name := expression
Обычно для присваивания и проверки нужно выполнить два шага:
>>> tweet_limit = 280
>>> tweet_string = "Blah" * 50
>>> diff = tweet_limit - len(tweet_string)
>>> if diff >= 0:
print("A fitting tweet")
else:
print("Went over by", abs(diff))
A fitting tweet
Морж помогает сделать это в один шаг:
>>> tweet_limit = 280
>>> tweet_string = "Blah" * 50
>>> if diff := tweet_limit - len(tweet_string) >= 0:
print("A fitting tweet")
else:
print("Went over by", abs(diff))
A fitting tweet
Соус: Книга “Простой Python” → Глава 2. “Выбираем с помощью оператора if”