Дизъюнкция знак в питоне

Ветвления¶

В языке Python логический тип данных представлен типом bool (бул, булев тип, булевый тип).

Объекты типа bool могут принимать одно из двух значений: True (истина) или False (ложь).

Операции отношения¶

Существует ряд операций, результатом вычисления которых являются объекты типа bool . Рассмотрим некоторые из них:

  1. Операции отношения: < , , >= .
  2. Проверка объектов на равенство. Операция == возвращает True , если ее операнды имеют одинаковые значения. Обратная ей операция — != :
>>> a = 4 >>> b = 2 >>> a == b False >>> a != b True 

Таблицы истинности логических операций¶

Логическое «И» (конъюнкция, логическое умножение)

Логическое «ИЛИ» (дизъюнкция, логическое сложение)

Логическое «НЕ» (инверсия, отрицание)

Условный оператор¶

Чаще всего логические выражения и операции отношения используются в условных конструкциях. В общем виде конструкция выглядит так:

if условие1: # Блок кода, выполняющийся в случае, # если принимает значение True elif условие2: # . # . else: # Блок кода, выполняющийся в случае, # если все предыдущие условия принимают значение False # Этот блок должен идти последним. 

Блоки elif и else необязательны.

Важно: блоки кода в Python оформляются с отступами в 4 пробела (вставить такой отступ можно нажатием клавиши ).

К условию относится только код, написанный с отступом. Сравните две записи:

# 1 if False: print('1') print('2') # 2 if False: print('1') print('2') 

Задачи¶

  1. Пользователь вводит число. Приложение сообщает, является это число положительным, отрицательным или нулем.
  2. Пользователь вводит номер месяца, приложение сообщает, какое это время года. Весна (3,4,5), лето (6,7,8), осень (9,10,11) зима (12,1,2)). Пример:
Номер месяца: 6 Лето Номер месяца: 12 Зима Номер месяца: 13 Такого месяца нет 
Часы: 2 Минуты: 25 Секунды: 13 Все верно. Время 2:25:13 Часы: 25 Минуты: 70 Секунды: 59 Ошибка! Часы должны быть в диапазоне [0:23] Минуты должны быть в диапазоне [0:59]
Число а: 17 Операция: + Число b: 10 Результат: 17 + 10 = 27 

© Copyright Revision d00c0df4 .

Versions latest Downloads html On Read the Docs Project Home Builds Free document hosting provided by Read the Docs.

Источник

ПОБИТОВЫЕ ОПЕРАТОРЫ В PYTHON (поразрядная конъюнкция и другие)

Побитовые операторы работают с данными в битовом (двоичном) формате и действуют бит за битом.

Всего этих операторов шесть:

& побитовое И (побитовое умножение, поразрядная конъюнкция)
| побитовое ИЛИ (побитовое сложение, поразрядная дизъюнкция)
^ побитовое исключающее ИЛИ (побитовая сумма по модулю два, XOR)
~ побитовое НЕ (побитовая инверсия, поразрядная инверсия)
> побитовый сдвиг вправо

Битовые операции используются в криптографических алгоритмах, сетевых технологиях и др.

Побитовое И (поразрядная конъюнкция)

Число 10 в двоичной системе — 1010, а число 6 — 110.
После поразрядного перемножения получим 0010. В десятичной системе это 2.

Побитовое ИЛИ (поразрядная дизъюнкция)

Число 10 в двоичной системе — 1010, а число 6 — 110.
После поразрядного сложения получим 1110. В десятичной системе это 14.

Побитовое исключающее ИЛИ (XOR)

Принцип поразрядного исключающего ИЛИ

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0

Пример с поразрядным исключающим ИЛИ:

Число 10 в двоичной системе — 1010, а число 6 — 110.
После поразрядного сложения по модулю два получим 1100. В десятичной системе это 12.

Побитовое НЕ

Положительные числа преобразуются в отрицательные со сдвигом на единицу, и наоборот.

Побитовый сдвиг влево

Позволяет сдвинуть битовое представление числа на несколько разрядов влево. Операции сдвига применяются только к целым числам.

Пример сдвига влево на 2 разряда:

Число 10 в двоичной системе — 1010.
После поразрядного сдвига влево на два разряда получим 101000 (справа добавится два разряда с нулями). В десятичной системе это 40.

Побитовый сдвиг вправо

Позволяет сдвинуть битовое представление числа на несколько разрядов вправо. Операции сдвига применяются только к целым числам.

Пример сдвига вправо на 2 разряда:

Число 10 в двоичной системе — 1010.
После поразрядного сдвига вправо на два разряда получим 10 (два правых разряда просто исчезнут). В десятичной системе это 2.

Источник

Арифметика и логика

Всё более-менее стандартно по модулю одной особенности: неполное частное — результат округления соответствующей дроби вниз, а не к нулю (как принято в большинстве языков программирования). При этом всегда выполняется

Следует быть аккуратным со следующими операторами:

  • с делением ( / ): его результат — число с плавающей точкой; арифметика с плавающей точкой на практике не пригодна ни для каких целей, кроме физического моделирования; любое другое использование арифметики с плавающей точкой требует высокой аккуратности и глубокого понимания её устройства
  • с остатком ( % ): у него есть оператор-омоним, форматирующий текст; применяется этот самый форматирующий оператор, если левый операнд имеет текстовый тип

Логика

В качестве основных логических значений используются «истина» True и «ложь» False . К ним можно применять конъюнкцию ( & или and ), дизъюнкцию ( | или or ), сложение ^ и отрицание not .

Отдельно выделим and и or : они вычисляют свой правый операнд только если левый истинный (для and ) и ложный (для or ). Ложными считаются None , False , всевозможные нули и всевозможные пустые контейнеры.

Остальные объекты встроенных типов считаются истинными.

Также можно встретить двуинфиксный тернарный оператор . if . else . :

  • первым делом он вычисляет свой второй операнд
  • если он истинный, то вычисляется первый операнд
  • в противном случае вычислятеся второй операнд
  • A and B эквивалентно B if A else A
  • not A эквивалентно False if A else True
  • A or B эквивалентно B if not A else A

Поскольку это — единственный чисто тернарный оператор в языке, его так и называют «тернарным оператором».

Поразрядные операции

Сильно упрощают работу с цепочками бит, которые можно моделировать числами, двоичными записями которых эти цепочки являются.

Основные поразрядные операции в языке следующие:

  • :& — поразрядная конъюнкция (результат состоит из тех и только тех двоичных разрядов, которые есть в обоих входных числах)
  • 😐 — поразрядная дизъюнкция (результат состоит из тех и только тех двоичных разрядов, которые есть хотя бы в одном из входных чисел)
  • :^ — поразрядный XOR (результат состоит из тех и только тех двоичных разрядов, которые есть ровно в одном из двух входных чисел)
  • :
  • :>> — сдвиг вправо (с уничтожением младших разрядов)

Рекомендуется их применять лишь к целым неотрицательным числам.

Источник

Читайте также:  Gspread append row python
Оцените статью