Все операторы языка питон

Все операторы языка питон

Don’t learn to code. Code to learn!

  • Python — Обзор
  • Основы синтаксиса Python
  • Операторы в Python
  • Типы данных в Python
  • Условные конструкторы в Python
  • Циклы в Python
  • Функции в Python
  • Функциональное программирование в Python
  • ООП в Python
  • Модули в Python
  • Работа с файлами в Python
  • Обработка исключительных ситуаций в Python

Что такое оператор?

Говоря простым языком, в выражении 2 + 3, числа «2» и «3» называются операндами, знак «+» оператором. В языке программирования Python существуют следующие типы операторов:

Арифметические операторы в Python:

15 + 5 в результате будет 20
20 + -3 в результате будет 17
13.4 + 7 в результате будет 20.4

Операторы сравнения в Python:

12 <> 5 в результате будет True. Похоже на оператор !=

Операторы присваивания в Python:

с = 5
а = 2
с += а равносильно: с = с + а. с будет равно 7

с = 5
а = 2
с -= а равносильно: с = с — а. с будет равно 3

с = 5
а = 2
с *= а равносильно: с = с * а. c будет равно 10

Побитовые операторы в Python:

Побитовые операторы предназначены для работы с данными в битовом (двоичном) формате. Предположим, что у нас есть два числа a = 60; и b = 13. В двоичном формате они будут иметь следующий вид:

Оператор Описание Примеры
& Бинарный «И» оператор, копирует бит в результат только если бит присутствует в обоих операндах. (a & b) даст нам 12, которое в двоичном формате выглядит так 0000 1100
| Бинарный «ИЛИ» оператор копирует бит, если тот присутствует в хотя бы в одном операнде. (a | b) даст нам 61, в двоичном формате 0011 1101
^ Бинарный «Исключительное ИЛИ» оператор копирует бит только если бит присутствует в одном из операндов, но не в обоих сразу. (a ^ b) даст нам 49, в двоичном формате 0011 0001
~ Бинарный комплиментарный оператор. Является унарным (то есть ему нужен только один операнд) меняет биты на обратные, там где была единица становиться ноль и наоборот. (~a ) даст в результате -61, в двоичном формате выглядит 1100 0011.
Побитовый сдвиг влево. Значение левого операнда «сдвигается» влево на количество бит указанных в правом операнде. a
>> Побитовый сдвиг вправо. Значение левого операнда «сдвигается» вправо на количество бит указанных в правом операнде. a >> 2 даст 15, в двоичном формате 0000 1111

Логические операторы в Python:

True and True равно True.
True and False равно False.
False and True равно False.
False and False равно False.

Операторы членства в Python:

В добавок к перечисленным операторам, в Python присутствуют, так называмые, операторы членства, предназначенные для проверки на наличие элемента в составных типах данных, таких, как строки, списки, кортежи или словари:

Оператор Описание Примеры
in Возвращает истину, если элемент присутствует в последовательности, иначе возвращает ложь. «cad» in «cadillac» вернет True.
1 in [2,3,1,6] вернет True.
«hi» in вернет True.
2 in вернет False (в словарях проверяется наличие в ключах, а не в значениях).
not in Возвращает истину если элемента нет в последовательности. Результаты противоположны результатам оператора in.

Операторы тождественности в Python:

Операторы тождественности сравнивают размещение двух объектов в памяти компьютера.

Оператор Описание Примеры
is Возвращает истину, если оба операнда указывают на один объект. x is y вернет истину, если id(x) будет равно id(y).
is not Возврашает ложь если оба операнда указывают на один объект. x is not y, вернет истину если id(x) не равно id(y).

Приоритет операторов в Python

В следующей таблице описан приоритет выполнения операторов в Python от наивысшего (выполняется в первую очередь) до наинизшего.

Оператор Описание
** Возведение в степень
~ + — Комплиментарный оператор
* / % // Умножение, деление, деление по модулю, целочисленное деление.
+ — Сложение и вычитание.
>> Побитовый сдвиг вправо и побитовый сдвиг влево.
& Бинарный «И».
^ | Бинарный «Исключительное ИЛИ» и бинарный «ИЛИ»
>= Операторы сравнения
<> == != Операторы равенства
= %= /= //= -= += *= **= Операторы присваивания
is is not Тождественные операторы
in not in Операторы членства
not or and Логические операторы

Источник

2. Операторы языка Python¶

Большинство предложений (логических строк) в программах содержат выражения. Простой пример выражения: 2 + 3. Выражение можно разделить на операторы и операнды.

Операторы – это некий функционал, производящий какие-либо действия, который может быть представлен в виде символов, как например +, или специальных зарезервированных слов. Операторы могут производить некоторые действия над данными, и эти данные называются операндами. В нашем случае 2 и 3 – это операнды.

2.1. Базовые операторы¶

далее стоит привести таблицу операторов:

отсутствует, он считается равным нулю

-5.2 даст отрицательное число, а 50 — 24 даст 26.

строку, повторённую заданное число раз.

2 * 3 даст 6. „la“ * 3 даст „lalala“.

Возвращает число х, возведённое в степень y

3** 4 даст 81 (т.е. 3 * 3 * 3 * 3)

Возвращает частное от деления x на y

4 / 3 даст 1.3333333333333333.

Возвращает неполное частное от деления

Возвращает остаток от деления

8 % 3 даст 2. -25.5 % 2.25 даст 1.5.

Сдвигает биты числа влево на заданное количество позиций. (Любое число в памяти компьютера представлено в виде битов — или двоичных чисел, т.е. 0 и 1)

Сдвигает биты числа вправо на заданное число позиций.

11 >> 1 даст 5. В двоичном виде 11 представляется как 1011, что будучи смещённым на 1 бит вправо, даёт 101, а это, в свою очередь, не что иное как десятичное 5

Побитовая операция И над числами

Побитовая операция ИЛИ над числами

Побитовое ИСКЛЮЧИТЕЛЬНО ИЛИ

Побитовая операция ИСКЛЮЧИТЕЛЬНО ИЛИ

Побитовая операция НЕ для числа x соответствует -(x+1)

Определяет, верно ли, что x меньше y. Все операторы сравнения возвращают True или False [1]. Обратите внимание на заглавные буквы в этих словах.

Можно составлять произвольные цепочки сравнений: 3 < 5 < 7 даёт True.

Определяет, верно ли, что x больше y

5 > 3 даёт True. Если оба операнда — числа, то перед сравнением они оба преобразуются к одинаковому типу. В противном случае всегда возвращается False.

Определяет, верно ли, что x меньше или равно y

Определяет, верно ли, что x больше или равно y

Проверяет, одинаковы ли объекты

x == y даёт False. x = „str“; y = „str“; x == y даёт True.

Проверяет, верно ли, что объекты не равны

Если же x равно False, получим True.

x and y даёт False, если x равно False , в противном случае возвращает значение y

x = False; y = True; x and y возвращает False, поскольку x равно False. В этом случае Python не станет проверять значение y,

так как уже знает, что левая часть выражения ‘and’ равняется False,

что подразумевает, что и всё выражение в целом будет равно False, независимо от значений всех остальных операндов. Это называется укороченной оценкой булевых (логических) выражений.

в противном случае получим значение y

x = True; y = False; x or y даёт True. Здесь также может производиться укороченная оценка выражений.

2.2. Управляющие операторы¶

2.2.1. Условные операторы (if/else)¶

Оператор if используется для проверки условий: если условие верно, выполняется блок выражений (называемый “if-блок”), иначе выполняется другой блок выражений (называемый “else-блок”). Блок “else” является необязательным.

В языке Python блоки разедяются табами или пробелами

Запомните эмпирическое правило: хотя вы можете использовать для отступов пробелы или табуляции, их смешивание внутри блока обычно не будет удачной иде­ей применяйте либо то, либо другое. Формально табуляция считается достаточным количеством пробелов, чтобы сместить текущую строку на расстояние, кратное 8, и код будет работать в случае согласованного смешивания табуляций и пробелов. Тем не менее, такой код может быть сложнее изменять. Хуже того, смешивание табуляций и пробелов затрудняет чтение кода целиком, не говоря уже о правилах синтаксиса Python — табуляции в редакторе сменившего вас программиста могут выглядеть сов­ сем не так, как в вашем редакторе.

Пример использования оператора if

number = 23 guess = int(input('Введите целое число : ')) if guess == number: print('Поздравляю, вы угадали,') # Здесь начинается новый блок print('(хотя и не выиграли никакого приза!)') # Здесь заканчивается новый блок elif guess  number: print('Нет, загаданное число немного больше этого.') # Ещё один блок # Внутри блока вы можете выполнять всё, что угодно . else: print('Нет, загаданное число немного меньше этого.') # чтобы попасть сюда, guess должно быть больше, чем number print('Завершено') # Это последнее выражение выполняется всегда после выполнения оператора if 

2.2.2. Оператор while¶

Оператор while — самая универсальная конструкция для итераций в языке Python. Выражаясь простыми терминами, он многократно выполняет блок операторов (обыч­ но с отступом) до тех пор, пока проверка в заголовочной части оценивается как истин­ ное значение. Это называется “циклом”, потому что управление продолжает возвра­ щаться к началу оператора, пока проверка не даст ложное значение. Когда результат проверки становится ложным, управление переходит на оператор, следующий после блока while. Совокупный эффект в том, что тело цикла выполняется многократно, пока проверка в заголовочной части дает истинное значение. Если проверка оцени­ вается в ложное значение с самого начала, тогда тело цикла никогда не выполнится и оператор while пропускается.

В своей самой сложной форме оператор while состоит из строки заголовка с вы­ ражением проверки, тела с одним или большим количеством оператором с отступами и необязательной части else, которая выполняется, если управление покидает цикл, а оператор break не встретился. Python продолжает оценивать выражение проверки в строке заголовка и выполняет операторы, вложенные в тело цикла, пока проверка не возвратит ложное значение:

number = 23 running = True while running: guess = int(input('Введите целое число : ')) if guess == number: print('Поздравляю, вы угадали.') running = False # это останавливает цикл while elif guess  number: print('Нет, загаданное число немного больше этого.') else: print('Нет, загаданное число немного меньше этого.') else: print('Цикл while закончен.') # Здесь можете выполнить всё что вам ещё нужно print('Завершение.') 

2.2.3. Цикл for¶

Оператор for..in также является оператором цикла, который осуществляет итерацию по последовательности объектов, т.е. проходит через каждый элемент в последовательности. Мы узнаем больше о последовательностях в дальнейших главах, а пока просто запомните, что последовательность – это упорядоченный набор элементов.

#Расмотрим несколько примеров for х in ["spam", "eggs", "ham"]: print(x, end=' ') #результатом этого цикла будет строка spam eggs ham 

оратите мнимание на параметр end=“ „, по умолчанию фукция print() завершает вывод символом конца строки «n», в случае с end=“ „ мы меняем его на пробел. Таким обазом мы выведем сообщения на экран в строку.

for i in range(1, 5): print(i) else: print('Цикл for закончен') 

2.2.3.1. Вложенные циклы for¶

Давайте теперь взглянем на цикл for, который сложнее тех, что мы видели до сих пор. В приведенном ниже примере иллюстрируется вложение операторов и конструк­ ция else цикла for. Имея список объектов (items) и список ключей (tests), код ищет каждый ключ в списке объектов и сообщает о результате поиска:

items = ["ааа", 111, (4, 5), 2.01] tests = [(4, 5) , 3.14] for key in tests: for item in items: if item — key: print (key, ’’was found”) break else: print(key, "not found!")

2.2.4. Оператор break¶

Оператор break служит для прерывания[7] цикла, т.е. остановки выполнения команд даже если условие выполнения цикла ещё не приняло значения False или последовательность элементов не закончилась.

Важно отметить, что если циклы for или while прервать оператором break, соответствующие им блоки else выполняться не будут.

while True: s = input('Введите что-нибудь : ') if s == 'выход': break print('Длина строки:', len(s)) print('Завершение') 

2.2.5. Оператор continue¶

Оператор continue используется для указания Python, что необходимо пропустить все оставшиеся команды в текущем блоке цикла и продолжить[9] со следующей итерации цикла.

while True: s = input('Введите что-нибудь : ') if s == 'выход': break if len(s)  3: print('Слишком мало') continue print('Введённая строка достаточной длины') # Разные другие действия здесь. 

Ну и в качестве маленького примера давайте нарисуем в консоли Ёлочку 🙂

#!/usr/bin/env python3 # -*- coding: utf-8 -*- '''программа рисует в консоли елочку''' ''' * *** ***** ******* ********* *********** ''' #Пример - 1 for i in range(1, 20, 2): #функция range() указывает начальное значение, конечное значение и шаг. print(' '.format('*' * i)) # Печатаем символ выравнивая его по центру #Пример -2 SPACE = ' ' STRAR = '*' rows = int(input('Укажите размер ёлочки: ')) spaces = rows-1 stars = 1 for i in range(rows): print( (SPACE*spaces) + (STRAR*stars) + (SPACE*spaces) ) stars += 2 spaces -= 1 

© Copyright 2020, Oleg Kishinskii Revision 87b11443 .

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

Источник

Читайте также:  Phpexcel cachedobjectstorage memory php
Оцените статью