Если в выражении используются несколько операторов, то необходимо знать в каком порядке будет выполняться выражение. Например, арифметическое выражение 2 + 2 * 2, как известно из курса математики, будет выполняться начиная с умножения. Тем самым умножение имеет более высокий приоритет, чем сложение. Ниже будет приведена таблица, в которой приведенные в этой главе операторы будут расположены от наиболее низкого приоритета, к более высокому. Стоит отметить, что, когда вы будете использовать сложные выражения с несколькими операторами, лучше использовать скобки. Такой подход поможет указать приоритет выполнения операций в явном виде.
Как видно из таблицы, некоторые операторы размещены в одной общей ячейке. Это значит, что их приоритет находится на одном уровне. Также стоит добавить, что операторы присваивания обладают наименьшим приоритетом.
Задание 1
Предлагаю вам потренироваться c логическими и побитовыми операторами. Ниже будут приведены выражения и ответы к ним. Попробуйте мысленно или на бумаге решить эти выражения и затем проверить себя, посмотрев правильный ответ. Задания будут располагаться по нарастающей от простого к сложному. Удачи!
Для:
a = True
b = False
Решите:
1. a and b
2. (a and b) or b
3. (a and b) or not (a and b)
4. a and b or not (a or b) or b
5. b and b or not a and (a or b or a) or not (a or b)
6. 1 << 2
7. 1 & 0 | 1 >> 1
8. 1 & 0 | 1 >> 0
9. 0b101 & 0b111 ^ 0b111 | 0b010 Комментарий: "0b101" - запись числа "5" на языке Python в двоичном виде
10. (7 & 9) ^ (1 | 0) & (3 & 4)
Ответы:
1. False
2. False
3. True
4. False
5. False
6. 4
Пояснение:
1 << 2 = 100 в двоичной системе.
Такое выражение по умолчанию Python выведет в десятичной системе счисления, что равно 4
7. 0
Пояснение:
1 >> 1 = 0
8. 1
9. 2 или 0b010
10. 1
#pythonснуля #программированиенаpython #урокиpython #пайтононлайн
Не забываем ставить лайк и подписываться на мой канал: zen.yandex.ru/...bramenkova Впереди много познавательного!
-----
Будем дружить vk.com/...bramenkova
Благодарю каждого за репост!)