- 2
приоритет операторов
этот вопрос к последнему примеру: x = 4 y = 2 if not 1+1 == y or x == 4 and 7 == 8: print('yes') elif x > y: print('no') какое условие проверяется в первой строке? как и в какой последоватеоьности это читать? elif понятен, печатаем 'нет' если Истинно x больше y. Но твою мать. как понять первую запись? 1 + 1 == y #это True x == 4 and 7 == 8 #это False not 1 + 1 == y #not True даёт нам False типа if False or False: print('yes') ???? Объясните пожалуйста
2 ответов
0
Read from left to right. If you have condition in parentheses - (2 > 5) it's executed first.
1. not (1 + 1 == 2 (True)) = False
2. False or (4 == 4 (True)) = True
3. True and (7 == 8 (False)) = False
4. If (False) -> elif (True) -> print('no')
Assume 1 = True, 0 = False
And:
1 and 1 - True
1 and 0 - False
0 and 1 - False
0 and 0 - False
Or:
1 or 1 - True
1 or 0 - True
0 or 1 - True
0 or 0 - False
Not:
1 and not 1 - False
1 and not 0 - True
not (1 and 1) - False
not (0 || not 1) - True
0
Спасибо, разобрался. Но вот для чего такая абра-кадабра? ))