№8 Операторы в Python / Уроки по Python для начинающих
Операторами пользуются для выполнения операций с переменными и значениями.
Python делит операторы на следующие группы:
Арифметические операторы в Python
Арифметические операторы используются с числовыми значениями для выполнения общих математических операций:
Оператор | Значение | Пример |
---|---|---|
+ | добавление | 4 + 5 |
— | вычитание | 8 — 3 |
* | умножение | 5 * 5 |
/ | деление | 4 / 2 |
% | остаток от деления | 7 % 2 |
** | возведение в степень | 2 ** 3 |
// | целочисленное деление | 15 // 4 |
Операторы присваивания в Python
Операторы присваивания используются для присваивания значений переменным:
Операторы сравнения используются для сравнения двух значений:
Логические операторы используются для объединения условных операторов:
Оператор | Значение | Пример | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
and | Возвращает значение True если оба утверждения верны | x Операторы тождественности в Python Операторы тождественности используются для сравнения объектов. Являются ли они одним и тем же объектом с одинаковым местоположением в памяти:
Операторы принадлежности в PythonОператоры принадлежности используются для проверки того, представлена ли последовательность в объекте:
Побитовые операторы в PythonПобитовые операторы используются для работы в битовом (двоичном) формате: Логические выражения в Python 3Логический тип данных (или Boolean) – это примитивный тип, который принимает одно из двух возможных значений: истину (True) или ложь (False). Этот тип используется во многих языках программирования для построения алгоритмов и управления поведением программ. Примечание: Название этого типа данных (Boolean) всегда пишется с заглавной буквы, поскольку он назван в честь математика Джорджа Буля, который занимался исследованиями математической логики. Значения True и False тоже пишутся с большой буквы – в Python они являются специальными значениями. Данное руководство ознакомит вас с основами булевой логики в Python: операторами сравнения, логическими операторами, таблицами истинности и т.п. Операторы сравненияВ программировании операторы сравнения используются при оценке и сравнении значений для последующего сведения их к одному логическому значению (True или False). Операторы сравнения Python 3 представлены в этой таблице:
Попробуйте поработать с этими операторами, чтобы понять, как они действуют. Для начала создайте пару переменных: Теперь сравните значения переменных с помощью вышеперечисленных операторов. Следуя математической логике, Python оценивает соотношения между значениями переменных так: Также операторы сравнения можно применять к числам с плавающей точкой и строкам. Примечание: Строки чувствительны к регистру; чтобы отключить такое поведение, нужно использовать специальный метод. Попробуйте сравнить две строки: Hello = «Hello» Строки Hello и hello содержат одинаковый набор символов, однако они не равны, поскольку одна из них содержит символы верхнего регистра. Попробуйте добавить ещё одну переменную, которая также будет содержать символы верхнего регистра, а затем сравните их. Hello = «Hello» Обратите внимание на разницу между операторами = и ==. x = y # Оператор присваивания. Устанавливает равенство между x и y (то есть присваивает x значение y). Логические операторыДля сравнения значений используется три логических оператора, которые сводят результат к логическому значению True или False.
Логические операторы обычно используются для оценки двух или больше выражений. Например, их можно использовать в программе, которая проверит: Если оба значения истинны, студент будет переведён на следующий курс. Другой пример: программа с логическими операторами может проверять активность пользователя в онлайн-магазине: Для примера попробуйте сравнить три выражения: В первом случае оба выражения истинны, потому оператор and возвращает True. Во втором случае истинно только значение 8 == 8. Поскольку хотя бы одно из предложенных условий истинно, оператор or возвращает True. Оператор and в таком случае выдал бы False. Примечание: Если вы не понимаете, как это работает, вам помогут разобраться таблицы истинности. Эту тему мы рассмотрим далее в этом руководстве. Логические операторы можно объединять в составные выражения: Далее оператор not заменит полученное значение False на обратное ему логическое значение: not(False) = True. Значит, результат будет таким: Таблицы истинностиМатематическая логика – очень полезная в программировании область знаний. В данном руководстве мы ознакомимся с основными её аспектами. Ниже представлены таблицы истинности для оператора сравнения == и всех логических операторов. Ими можно пользоваться при написании логических выражений. В таблицах перечислены общие случаи использования оператора, потому их рекомендуется выучить наизусть. Таблица истинности оператора ==
Таблица истинности оператора AND
Таблица истинности оператора OR
Таблица истинности оператора NOT
Таблицы истинности – общие математические таблицы, которые используются в логике. Их полезно выучить наизусть, чтобы затем применять при построении алгоритмов и написании программ. Использование логических операторов для управления потокомДля управления результатом и потоками данных программы можно использовать условные операторы (condition) с выражениями (clause). Условные операторы оценивают значение как истинное или ложное. Выражение – это блок кода, который идёт после условного оператора и определяет результат программы. Ниже приведён блок кода, который показывает, как объединить условные операторы для управления потоком программы Python. if grade >= 65: # условие Эта программа оценивает результат каждого студента и определяет, сдал он экзамен или нет. К примеру, если студент набрал 83, первое условие будет иметь значение True, и программа выведет на экран строку: Если же студент набрал 59 баллов, первое условие будет ложно, потому программа выдаст: Читайте также: руководство PEP 8 ЗаключениеДанное руководство охватывает основы работы с логическими данными Python. Операторы и выражения в PythonБ ольшинство строк программного кода представляют собой выражения. Например: 1 + 2 — это выражение. Выражение состоит из 2 частей: Операторы сравненияДля проверки истинности данного условия, используется логический тип. Когда мы выполним данное выражение, в результате нам вернется True (истина) или False (ложь). В данном примере мы используем один из операторов сравнения — «==» (равно). Всего в Python таких операторов 6: Логические операторыАрифметические операторыАрифметические операторы в Python производят арифметические операции над числами (сложение, вычитание, деление и т.д.); Операторы присваиванияОператоры присваивания в Python работаю вполне очевидно — значение находящееся справа присваивается переменной, находящейся слева. Существует несколько разновидностей операторов присваивания: Python поддерживает не только обычное присваивание правого операнда левому, но и множественное присваивание. С помощью такого присваивания можно поменять значения переменных между собой: >>> a = 1 >>> b = 2 >>> a, b = b, a >>> print(a, b) 2 1 Также с помощью множественного присваивания можно «распаковывать» строки (str), списки (list), кортежи (tuple) и словари (dict). Распаковка особенно удобна, когда функция возвращает несколько значений в виде кортежа (tuple): >>> def test_page(): return 404, «Not found» >>> code, message = test_page() >>> print(code, message) 404 Not found Главное условие распаковки – количество элементов должно совпадать Если необходимо распаковать лишь несколько элементов, воспользуйтесь переменной со знаком » * «: >>> text = «deactivate» >>> first, second, *other_letters = text >>> print(first, second, other_letters) d e [‘a’, ‘c’, ‘t’, ‘i’, ‘v’, ‘a’, ‘t’, ‘e’] Побитовые операторыОператоры членстваВ Python существует всего 2 оператора принадлежности — in и not in и предназначены они для проверки наличия элемента в строке (str), списке (list), словаре (dict) или кортеже (tuple). Операторы тождественностиДанные операторы сравнивают размещение двух объектов в памяти. Приоритет операторовТаблица приоритетов операторов в Python показана ниже. Элементы отсортированы по убыванию, с высокого приоритета к более низкому. В комбинациях с несколькими операторами, оператор с большим приоритетом выполняется первым. Что значит //, %, not in, == и другие операторы PythonОператоры – это специальные знаки, которые являются командой для интерпретатора Python по выполнению определенных задач. Они бывают абсолютно разными: арифметическими, операторами сравнения, тождественности, принадлежности и так далее. Все они имеют различные особенности, которые сегодня мы рассмотрим более подробно. Арифметические операторы PythonКак можно догадаться из названия, арифметические операторы нужны для того, чтобы совершать несложные арифметические операции. К таковым относятся: Теперь перейдем к описанию принципа работы этих операторов (равно, как и других). Сначала необходимо разобраться в значении слова «операнд». Это те фрагменты информации, над которыми осуществляется операция. В нашем случае – арифметическая. Но оператор деления по модулю, например, будет использоваться таким образом. То есть, каждый из описанных выше знаков ставится между операндами. А получившееся выражение может присваиваться другой переменной или же использоваться в качестве аргумента функции. Операторы присваивания PythonПрисваивание значения переменной – одна из самых распространенных операций. С ее помощью можно передавать ей необходимую информацию, которая в дальнейшем может использоваться программой. Без нее невозможно представить программирования. А для большего удобства использования количество операторов присваивания в Python очень большое. Рассмотрим наиболее распространенные из них. Тем не менее, в некоторых случаях он может читаться, как знак «равно», но только если речь не идет о сравнении операндов. Эта простая строчка кода присваивает переменной x значение 5. То есть, она может читаться, как «x равно 5». Но при этом осуществляется не констатация факта, а действие, после которого переменная x становится равной 5. А до этого действия она может как вовсе отсутствовать, так и содержать любое другое значение. Это единственный оператор этой категории, который выполняет одно действие. Остальные же совершают сразу 2. Это то же самое, что x = x + 3. В целом, любой из операторов может быть заменен на аналогичное выражение, где переменная равно переменная, оператор, операнд 2. Дальше мы приведем еще несколько таких примеров для наглядности, и такая же логика будет действовать для всех операторов присваивания. На практике все значительно проще, чем может показаться, когда вы читали это правило. Оператор –= аналогичен выражению x = x-y. Просто оно более сокращенное. Оператор *=. Аналог предыдущих двух операторов присваивания, только выполняющий операцию умножения. Соответственно, принцип его работы аналогичный. В целом, по такому же принципу работают все остальные операторы. Например, есть оператор деления, который также ставится перед знаком равно, а также деление по модулю, остаток от деления и так далее. Давайте приведем таблицу с описанием всех имеющихся операторов сравнения при их соединении с другими. Операторы сравнения PythonОни используются, чтобы сопоставить операнды друг с другом и понять, они равны, или какое-то из них большее, или меньшее. Рассмотрим существующие операторы сравнения. Равно (==). Как и говорилось выше, этот оператор выглядит несколько иначе, чем оператор присваивания. Выглядит он, как два математических знака «равно», стоящих вместе. Он проверяет равенство двух операндов, и в случае соблюдения этого критерия возвращает значение «истина». Не равно (!=). Также отличается от аналогичного арифметического знака в математике. Противоположный по значению оператор. Возвращает истину, если указанный выше критерий не соблюдается. Больше, чем (>) и меньше, чем ( Операторы, аналогичные таковым в математике. Больше или равно (>=) и меньше или равно ( Аналоги соответствующих операторов в математике с несколько иным описанием. Приведем сводную таблицу со значениями и примерами использования этих операторов. Логические операторы PythonПредназначены для связывания объектов между собой. Используются для задания условия, при котором выполняются определенные действия или для указания критерия, при котором выполняется цикл или осуществляется выход из него. Всего существует три логических оператора в этом языке программирования И (and). Объединяет условия между собой. Если оба критерия оказываются верными, оператор возвращает значение «истина». Если же нет, то «ложь». ИЛИ (or). Проверяет истинность хотя бы одного из указанных операндов. Если из них есть один, который соответствует действительности, то возвращается значение «истина». Если же нет, то «ложь». Приведем сводную таблицу с примерами использования этих операторов, а также их значениями. Операторы тождественности PythonЕсли требуется сравнить несколько объектов между собой, используются операторы тождественности. При этом они отличаются по принципу действия от операторов сравнения с тем, поскольку критерием для тождественности является нахождение операндов в одной и той же части памяти. Есть всего два оператора тождественности: Приведем наглядную таблицу с описанием использования операторов тождественности в Python. Операторы принадлежности PythonPython также умеет раскладывать объекты на составляющие и проверять, является ли один объект составной частью другого. Типичный пример использования – строки. Например, с их помощью можно проверять, является ли одна подстрока составной частью другой подстроки. Соответственно, возвращается логический результат, предусмотренный подходящим оператором. Приведем небольшую таблицу с примерами использования этих операторов (вернее, шаблонами), а также – их значениями. Побитовые операторы PythonСамая сложная для понимания категория операторов. Настолько сложная, что для этого нужно отдельно рассматривать принцип работы каждого из них. Ведь каждый работает по определенным формулам. Они поддаются логике, она будет указана в таблице ниже. Тем не менее, это все равно довольно сложно. Начнем с того, что они работают с битами. То есть, с нулями и единицами, а не привычными значениями. Например, оператор & каждый бит делает единицей лишь при условии, что каждый бит операндов на соответствующих позициях равен единице. Вот более подробная таблица с использованием этих операторов. Мы разобрались с самыми часто используемыми операторами в Python, а также рядом других, сфера применения которых более ограниченная. Следует отметить, что операторы – это одна из самых простых тем в программировании. Они почти не отличаются от привычных нам математических знаков, просто список символов, которые используются, несколько больше. При этом принцип их работы доступен для понимания каждому новичку. Единственное исключение – побитовые операторы, которые заслуживают отдельного рассмотрения. Основные операторы PythonОператоры используются для выполнения определенных операций с переменными и значениями. В Python есть много операторов, которые являются ключевыми словами или специальными символами. Значения или переменные, с которыми работают эти операторы, называются операндами. Типы операторов PythonОператоры Python можно разделить на следующие категории. 1. Арифметические операторыАрифметические операторы обычно работают с числами. Есть операторы для сложения, вычитания, умножения, деления, модуля и экспоненциальных операций. Некоторые из этих операторов работают и со строками. Все арифметические операторы — специальные символы. Давайте посмотрим на пример арифметических операторов в Python. Python поддерживает операторы сложения и умножения для строк. 2. СравненияСписок операторов сравнения: 4. Логические5. Операторы присваиванияОператор присваивания (=) используется для присвоения значения левого операнда правому операнду. Есть несколько составных операторов присваивания, которые выполняют арифметические операции между двумя операндами и затем присваивают значение левому операнду. 6. Операторы членстваОператоры членства используются для проверки наличия значения в последовательности. В Python есть два оператора членства. Эти операторы обычно используются с условием if-else. 7. ИдентификацииОператоры идентификации используются для проверки, указывают ли две переменные на одно и то же место в памяти или нет. Есть два оператора идентичности. ПриоритетИногда выражение содержит несколько операторов. В этом случае приоритет оператора используется для определения порядка выполнения. В таблице ниже перечислены приоритеты операторов в порядке убывания.
|