Справочник от Автор24
Поделись лекцией за скидку на Автор24

Переменные и операторы Python

  • 👀 244 просмотра
  • 📌 215 загрузок
Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Конспект лекции по дисциплине «Переменные и операторы Python» pdf
Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Язык программирования Python Метод format Форматирование строк в Python 3 может осуществляться двумя способами. Более новый способ основан на использовании метода format класса строки. Метод format объединяет форматную строку, содержащую поля-заменители в фигурных скобках { }, со значениями, взятыми из параметров команды format. Команда format предоставляет мощный мини-язык форматирования строк, дающий почти бесконечные возможности для управления форматированием строк. Пример 4. age = 22 name = 'Иванов Иван' print('Возраст {0} - {1} лет.'.format(name, age)) print('Почему {0} изучает этот Python?'.format(name)) Здесь {0} соответствует первой переменной, т.е. name, а {1} – второй переменной, т.е. age. Могут быть и более детальные обозначения, как то: >>> # десятичное число (.) с точностью в 3 знака для плавающих: ... '{0:.3}'.format(1/3) '0.333' >>> # заполнить подчёркиваниями (_) с центровкой текста (^) по ширине 11: ... '{0:_^11}'.format('hello') '___hello___' 1 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Переменные в Python Имя переменной – это идентификатор. Идентификатор - это последовательность букв, цифр и знака подчёркивания. Первым символом идентификатора не может быть цифра. В идентификаторах Python3 допускаются символы кириллицы (это обусловлено полной поддержкой кодировки Unicode в Python): Имя=’Павел’ print(Имя) Переменным Python могут присваиваться любые объекты, тогда как в C и многих других языках переменная может хранить значения только того типа, с которым она была объявлена. Далее приведён абсолютно нормальный код Python: >>> x = "Hello" >>> print(x) Hello >>> x = 7 >>> print(x) 7 Переменная x сначала ссылается на строковый объект "Hello", а потом на объект целого числа 5. Конечно, такое использование переменных допустимо в Python, но оно усложняет понимание кода и поэтому не рекомендуется. Новое присваивание переопределяет все предыдущие. Команда del удаляет переменную. При попытке вывести содержимое переменной после её удаления происходит ошибка, как если бы переменная никогда не создавалась. >>> x=5 >>> print(x) 5 2 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . >>> del(x) >>> print(x) Traceback (most recent call last): File "", line 1, in print(x) NameError: name 'x' is not defined >>> Значение None Кроме стандартных типов (таких, как строки и числа), в Python существует специальный базовый тип данных, определяющий один специальный объект данных с именем None. Как подсказывает имя, None используется для представления неопределённых значений. В Python оно неоднократно встречается в разных видах. Например, процедура в Python представляет собой функцию, которая не возвращает явное значение, а это означает, что по умолчанию она возвращает None. Значение None часто используется в повседневном программировании Python в качестве заместителя; оно показывает, что значение некоторого поля структуры данных будет получено со временем, хотя в настоящее время оно ещё не вычислено. Проверка присутствия None выполняется легко, потому что во всей системе Python существует только один экземпляр None (все упоминания None относятся к одному объекту), и значение None эквивалентно только самому себе. Ввод данных пользователя Функция input() предназначена для получения данных от пользователя. В её параметре передаётся строка запроса, которая должна быть выведена для пользователя: >>> name = input("Имя? ") Имя? Иван 3 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . >>> print(name) Иван >>> age = int(input("Age? ")) #Преобразует введённое значение из строки в целое число Age? 19 >>> print(age) 19 >>> Этот способ получения входных данных относительно прост. Единственная особенность заключается в том, что ввод поступает в виде строки, так что если потребуется использовать его как число, придётся преобразовать данные вызовом функции int() или float(). Приоритет операторов в Python В языке программирования Python существуют следующие типы операторов:  Арифметические операторы;  Операторы сравнения (реляционные);  Операторы присваивания;  Побитовые операторы;  Логические операторы;  Операторы членства (Membership operators);  Операторы тождественности (Identity operators). Арифметические операторы в Python: Оператор Описание Примеры + Сложение - Суммирует значения слева и справа от оператора 15 + 5 в результате будет 20 20 + -3 в результате будет 17 13.4 + 7 в результате будет 20.4 - Вычитание - Вычитает правый операнд из левого 15 - 5 в результате будет 10 4 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . 20 - -3 в результате будет 23 13.4 - 7 в результате будет 6.4 Умножение - Перемножает операнды 5 * 5 в результате будет 25 7 * 3.2 в результате будет 22.4 -3 * 12 в результате будет -36 / Деление - Делит левый операнд на правый 15 / 5 в результате будет 3 5 / 2 в результате будет 2 (В Python 2.x версии при делении двух целых чисел результат будет целое число) 5.0 / 2 в результате будет 2.5 (Чтобы получить "правильный" результат хотя бы один операнд должен быть float) % Деление по модулю - Делит левый операнд на правый и возвращает остаток. 6 % 2 в результате будет 0 7 % 2 в результате будет 1 13.2 % 5 в результате 3.2 ** Возведение в степень - возводит левый операнд в степень правого 5 ** 2 в результате будет 25 2 ** 3 в результате будет 8 -3 ** 2 в результате будет -9 // Целочисленное деление - Деление в котором возвращается только целая часть результата. Часть после запятой отбрасывается. 12 // 5 в результате будет 2 4 // 3 в результате будет 1 25 // 6 в результате будет 4 * Операторы сравнения в Python: Оператор Описание Примеры == Проверяет равны ли оба операнда. Если да, то условие становится истинным. 5 == 5 в результате будет True True == False в результате будет False "hello" == "hello" в результате будет True != Проверяет равны ли оба операнда. Если нет, то условие становится истинным. 12 != 5 в результате будет True False != False в результате будет False "hi" != "Hi" в результате будет True <> Проверяет равны ли оба операнда. Если нет, то условие становится истинным. 12 <> 5 в результате будет True. Похоже на оператор != > Проверяет больше ли значение левого операнда, чем значение правого. Если да, то условие становится истинным. 5 > 2 в результате будет True. True > False в результате будет True. "A" > "B" в результате будет False. < Проверяет меньше ли значение левого операнда, чем значение правого. Если да, то условие становится истинным. 3 < 5 в результате будет True. True < False в результате будет False. "A" < "B" в результате будет True. >= Проверяет больше или равно значение левого операнда, чем значение правого. Если да, то условие становится истинным. 1 >= 1 в результате будет True. 23 >= 3.2 в результате будет True. "C" >= "D" в результате будет False. <= Проверяет меньше или равно значение левого операнда, чем значение правого. Если да, то условие становится истинным. 4 <= 5 в результате будет True. 0 <= 0.0 в результате будет True. -0.001 <= -36 в результате будет False. 5 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Операторы присваивания в Python: Оператор Описание Примеры = Присваивает значение правого операнда левому. c = 23 присвоит переменной с значение 23 += Прибавит значение правого операнда к левому и присвоит эту сумму левому операнду. с=5 а=2 с += а равносильно: с = с + а. с будет равно 7 -= Отнимает значение правого операнда от левого и присваивает результат левому операнду. с=5 а=2 с -= а равносильно: с = с - а. с будет равно 3 *= Умножает правый операнд с левым и присваивает результат левому операнду. с=5 а=2 с *= а равносильно: с = с * а. c будет равно 10 /= Делит левый операнд на правый и присваивает результат левому операнду. с = 10 а=2 с /= а равносильно: с = с / а. c будет равно 5 %= Делит по модулю операнды и присваивает результат левому. с=5 а=2 с %= а равносильно: с = с % а. c будет равно 1 **= Возводит в левый операнд в степень правого и присваивает результат левому операнду. с=3 а=2 с **= а равносильно: с = с ** а. c будет равно 9 //= Производит целочисленное деление левого операнда на правый и присваивает результат левому операнду. с = 11 а=2 с //= а равносильно: с = с // а. c будет равно 5 Побитовые операторы в Python: Побитовые операторы предназначены для работы с данными в битовом (двоичном) формате. Предположим, что у нас есть два числа a = 60; и b = 13. В двоичном формате они будут иметь следующий вид: a = 0011 1100 b = 0000 1101 Оператор Описание Примеры & Бинарный "И" оператор, копирует бит в результат только если бит присутствует в обоих операндах. (a & b) даст нам 12, которое в двоичном формате выглядит так 0000 1100 | Бинарный "ИЛИ" оператор копирует бит, если тот присутствует в хотя бы в одном операнде. (a | b) даст нам 61, в двоичном формате 0011 1101 6 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . ^ Бинарный "Исключающее ИЛИ" оператор копирует бит только если бит присутствует в одном из операндов, но не в обоих сразу. (a ^ b) даст нам 49, в двоичном формате 0011 0001 ~ Бинарный комплиментарный оператор. Является унарным (то есть ему нужен только один операнд) меняет биты на обратные, там где была единица становиться ноль и наоборот. (~a ) даст в результате -61, в двоичном формате выглядит 1100 0011. << Побитовый сдвиг влево. Значение левого операнда a << 2 в результате даст 240, в "сдвигается" влево на количество бит указанных в двоичном формате 1111 0000 правом операнде. >> Побитовый сдвиг вправо. Значение левого операнда "сдвигается" вправо на количество бит указанных в правом операнде. a >> 2 даст 15, в двоичном формате 0000 1111 Логические операторы в Python: Оператор Описание Примеры and Логический оператор "И". Условие будет истинным если оба операнда истина. True and True равно True. True and False равно False. False and True равно False. False and False равно False. or Логический оператор "ИЛИ". Если хотя бы один из операндов истинный, то и все выражение будет истинным. True or True равно True. True or False равно True. False or True равно True. False or False равно False. not Логический оператор "НЕ". Изменяет логическое значение операнда на противоположное. not True равно False. not False равно True. Операторы членства в Python: В добавок к перечисленным операторам, в Python присутствуют, так называемые, операторы членства, предназначенные для проверки на наличие элемента в составных типах данных, таких, как строки, списки, кортежи или словари: Оператор in not in Описание Примеры Возвращает истину, если элемент присутствует в последовательности, иначе возвращает ложь. "cad" in "cadillac" вернет True. 1 in [2,3,1,6] вернет True. "hi" in {"hi":2,"bye":1} вернет True. 2 in {"hi":2,"bye":1} вернет False (в словарях проверяется наличие в ключах, а не в значениях). Возвращает истину если элемента нет в последовательности. Результаты противоположны результатам оператора in. Операторы тождественности в Python: Операторы тождественности сравнивают размещение двух объектов в памяти компьютера. 7 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Оператор Описание Примеры 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 Логические операторы Поток команд В Python последовательность команд всегда выполняется по порядку строго сверху вниз. Если требуется изменить естественный порядок потока команд, следует использовать операторы управления потоком: if, 8 for и while. Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Условный оператор if Оператор if используется для проверки условий: если условие верно, выполняется блок выражений (называемый «if-блок»), иначе выполняется другой блок выражений (называемый «else-блок»). Сначала записывается часть if с условным выражением, далее могут следовать одна или более необязательных частей elif, и, наконец, необязательная часть else. Общая форма записи условной инструкции if выглядит следующим образом: if test1: state1 elif test2: state2 else: state3 Пример 5. (prim5.py) a = int(input('Введите сумму баллов : ')) if a < 61: print('Low') elif 62 <= a <= 80: print('Mid') else: print('High') Конструкция с несколькими elif может также служить заменой конструкции switch - case в других языках программирования. Оператор цикла while 9 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Оператор while позволяет многократно выполнять блок команд до тех пор, пока выполняется некоторое условие. Он также может иметь необязательный пункт else. Пример 6. (primer6.py) # Игра "Угадай число" number = 34 running = True while running: guess = int(input('Введите целое число : ')) if guess == number: print('Поздравляю, вы угадали.') running = False # это останавливает цикл while elif guess < number: print('Нет, загаданное число немного больше этого') else: print('Нет, загаданное число немного меньше этого.') else: print('Цикл while закончен.') print('Завершение.') Блок else выполняется тогда, когда условие цикла while становится ложным (False) – это может случиться даже при самой первой проверке условия. Если у цикла while имеется дополнительный блок else, он всегда выполняется, если только цикл не будет прерван оператором break. Оператор цикла for 10 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Оператор for..in также является оператором цикла, который осуществляет итерацию по любому итерируемому объекту (например строке или списку), т.е. проходит через каждый элемент в последовательности. Пример 7. for i in 'Hello Python world !': print(i * 2, end='') Получим: HHeelllloo PPyytthhoonn wwoorrlldd !! (Все символы строки повторяются дважды). Чаще всего оператор цикла for используется совместно с стандартной функцией range(). Пример 8. for i in range(1,5): print(i) else: print('Цикл for закончен') Получим: 1 2 3 4 Цикл for закончен 11 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . Здесь используется встроенная функцию range. Мы задаём два числа, и range возвращает последовательность чисел от первого числа до второго. Например, range(1,5) даёт последовательность [1, 2, 3, 4]. По умолчанию range принимает значение шага, равное 1. Если мы зададим также и третье число в range, оно будет служить шагом. Например, range(1,5,2) даст [1,3]. Следует учитывать, что интервал простирается только до второго числа, т.е. не включает его в себя. Оператор continue Оператор continue прекращает выполнение текущей итерации цикла (for или while) и начинает следующую итерацию (проход) цикла. Оператор break Данный оператор досрочно прекращает выполнение цикла. Важно отметить, что если циклы for или while прервать оператором break, соответствующие им блоки else выполняться не будут. Встроенные функции Python Язык Python включает множество встроенных функций, которые позволяют решать наиболее часто встречающиеся, типовые задачи. Некоторые из встроенных функций: bool(x) - преобразование к типу bool, использующая стандартную процедуру проверки истинности. Если х является ложным или опущен, возвращает значение False, в противном случае она возвращает True. complex([real[, imag]]) - преобразование к комплексному числу. dict([object]) - преобразование к словарю. float([X]) - преобразование к числу с плавающей точкой. Если аргумент не указан, возвращается 0.0. frozenset([последовательность]) - возвращает неизменяемое множество. 12 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . int([object], [основание системы счисления]) - преобразование к целому числу. list([object]) - создает список. object() - возвращает безликий объект, являющийся базовым для всех объектов. range([start=0], stop, [step=1]) - арифметическая прогрессия от start до stop с шагом step. set([object]) - создает множество. slice([start=0], stop, [step=1]) - объект среза от start до stop с шагом step. str([object], [кодировка], [ошибки]) - строковое представление объекта. Использует метод __str__. tuple(obj) - преобразование к кортежу. abs(x) - Возвращает абсолютную величину (модуль числа). all(последовательность) - Возвращает True, если все элементы истинные (или, если последовательность пуста). any(последовательность) - Возвращает True, если хотя бы один элемент - истина. Для пустой последовательности возвращает False. bin(x) - Преобразование целого числа в двоичную строку. chr(x) - Возвращает односимвольную строку, код символа которой равен x. classmethod(x) - Представляет указанную функцию методом класса. compile(source, filename, mode, flags=0, dont_inherit=False) - Компиляция в программный код, который впоследствии может выполниться функцией eval или exec. Строка не должна содержать символов возврата каретки или нулевые байты. dir([object]) - Список имён объекта, а если объект не указан, список имён в текущей локальной области видимости. divmod(a, b) - Возвращает частное и остаток от деления a на b. enumerate(iterable, start=0) - Возвращает итератор, при каждом проходе предоставляющем кортеж из номера и соответствующего члена последовательности. eval(expression, globals=None, locals=None) - Выполняет строку программного кода. exec(object[, globals[, locals]]) - Выполняет программный код на Python. 13 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . filter(function, iterable) - Возвращает итератор из тех элементов, для которых function возвращает истину. format(value[,format_spec]) - Форматирование (обычно форматирование строки). globals() - Словарь глобальных имен. hash(x) - Возвращает хеш указанного объекта. help([object]) - Вызов встроенной справочной системы. hex(х) - Преобразование целого числа в шестнадцатеричную строку. id(object) - Возвращает "адрес" объекта. Это целое число, которое гарантированно будет уникальным и постоянным для данного объекта в течение срока его существования. input([prompt]) - Возвращает введённую пользователем строку. Prompt подсказка пользователю. iter(x) - Возвращает объект итератора. len(x) - Возвращает число элементов в указанном объекте. locals() - Словарь локальных имен. map(function, iterator) - Итератор, получившийся после применения к каждому элементу последовательности функции function. max(iter, [args ...] * [, key]) - Максимальный элемент последовательности. min(iter, [args ...] * [, key]) - Минимальный элемент последовательности. next(x) - Возвращает следующий элемент итератора. oct(х) - Преобразование целого числа в восьмеричную строку. open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True) - Открывает файл и возвращает соответствующий поток. ord(с) - Код символа. pow(x, y[, r]) – возведение x в степень y. print([object, ...], *, sep=" ", end='\n', file=sys.stdout) - Печать. round(X [, N]) - Округление до N знаков после запятой. setattr(объект, имя, значение) - Устанавливает атрибут объекта. sorted(iterable[, key][, reverse]) - Отсортированный список. 14 Объектно-ориентированный анализ и программирование. Лекция 2019 – 2 . sum(iter, start=0) - Сумма членов последовательности. type(object) - Возвращает тип объекта. type(name, bases, dict) - Возвращает новый экземпляр класса name. vars([object]) - Словарь из атрибутов объекта. По умолчанию - словарь локальных имен. zip(*iters) - Итератор, возвращающий кортежи, состоящие из соответствующих элементов аргументов-последовательностей 15
«Переменные и операторы Python» 👇
Готовые курсовые работы и рефераты
Купить от 250 ₽
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Тебе могут подойти лекции

Смотреть все 588 лекций
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot