* (умножение)
Оператор работает с двумя операндами: можителем и множимым.
- В случае, когда оба операнда числа, сначала производится приведение к общему типу. Результатом является произведение.
- В случае, когда один из операндов это число, а второй последовательность, возвращается повторённая последовательность.
2 * 3 # 6
3 * 2 # 6
2.2 * 2 # 4.4
3 * -2 # -6
-3 * -2 # 6
2 * [1, 2] # [1, 2, 1, 2]
-2 * [1, 2] # []
Синонимы поиска: * (умножение), умножение, умножить, произведение
Как умножить в питоне
Python поддерживает все распространенные арифметические операции:
-
+ Сложение двух чисел:
print(6 + 2) # 8
print(6 - 2) # 4
print(6 * 2) # 12
print(6 / 2) # 3.0
print(7 / 2) # 3.5 print(7 // 2) # 3
print(6 ** 2) # Возводим число 6 в степень 2. Результат - 36
print(7 % 2) # Получение остатка от деления числа 7 на 2. Результат - 1
При последовательном использовании нескольких арифметических операций их выполнение производится в соответствии с их приоритетом. В начале выполняются операции с большим приоритетом. Приоритеты операций в порядке убывания приведены в следующей таблице.
Пусть у нас выполняется следующее выражение:
number = 3 + 4 * 5 ** 2 + 7 print(number) # 110
Здесь начале выполняется возведение в степень (5 ** 2) как операция с большим приоритетом, далее результат умножается на 4 (25 * 4), затем происходит сложение (3 + 100) и далее опять идет сложение (103 + 7).
Чтобы переопределить порядок операций, можно использовать скобки:
number = (3 + 4) * (5 ** 2 + 7) print(number) # 224
Следует отметить, что в арифметических операциях могут принимать участие как целые, так и дробные числа. Если в одной операции участвует целое число (int) и число с плавающей точкой (float), то целое число приводится к типу float.
Арифметические операции с присвоением
Ряд специальных операций позволяют использовать присвоить результат операции первому операнду:
- += Присвоение результата сложения
- -= Присвоение результата вычитания
- *= Присвоение результата умножения
- /= Присвоение результата от деления
- //= Присвоение результата целочисленного деления
- **= Присвоение степени числа
- %= Присвоение остатка от деления
number = 10 number += 5 print(number) # 15 number -= 3 print(number) # 12 number *= 4 print(number) # 48
Округление и функция round
При операциях с числами типа float надо учитывать, что результат операций с ними может быть не совсем точным. Например:
first_number = 2.0001 second_number = 5 third_number = first_number / second_number print(third_number) # 0.40002000000000004
В данном случае мы ожидаем получить число 0.40002, однако в конце через ряд нулей появляется еще какая-то четверка. Или еще одно выражение:
print(2.0001 + 0.1) # 2.1001000000000003
В случае выше для округления результата мы можем использовать встроенную функцию round() :
first_number = 2.0001 second_number = 0.1 third_number = first_number + second_number print(round(third_number)) # 2
В функцию round() передается число, которое надо округлить. Если в функцию передается одно число, как в примере выше, то оно округляется до целого.
Функция round() также может принимать второе число, которое указывает, сколько знаков после запятой должно содержать получаемое число:
first_number = 2.0001 second_number = 0.1 third_number = first_number + second_number print(round(third_number, 4)) # 2.1001
В данном случае число third_number округляется до 4 знаков после запятой.
Если в функцию передается только одно значение — только округляемое число, оно округляется то ближайшего целого
# округление до целого числа print(round(2.49)) # 2 - округление до ближайшего целого 2 print(round(2.51)) # 3
Однако если округляемая часть равна одинаково удалена от двух целых чисел, то округление идет к ближайшему четному:
print(round(2.5)) # 2 - ближайшее четное print(round(3.5)) # 4 - ближайшее четное
Округление производится до ближайшего кратного 10 в степени минус округляемая часть:
# округление до двух знаков после запятой print(round(2.554, 2)) # 2.55 print(round(2.5551, 2)) # 2.56 print(round(2.554999, 2)) # 2.55 print(round(2.499, 2)) # 2.5
Однако следует учитывать, что функция round() не идеальный инструмент. Например, выше при округление до целых чисел применяется правило, согласно которому, если округляемая часть одинаково удалена от двух значений, то округление производится до ближайшего четного значения. В Python в связи с тем, что десятичная часть числа не может быть точно представлена в виде числа float, то это может приводить к некоторым не совсем ожидаемым результатам. Например:
# округление до двух знаков после запятой print(round(2.545, 2)) # 2.54 print(round(2.555, 2)) # 2.56 - округление до четного print(round(2.565, 2)) # 2.56 print(round(2.575, 2)) # 2.58 print(round(2.655, 2)) # 2.65 - округление не до четного print(round(2.665, 2)) # 2.67 print(round(2.675, 2)) # 2.67
Подобно о проблеме можно почитать к документации.
- Вопросы для самопроверки
- Упражнения для самопроверки
Основы Python для программируемых сетей и систем — сложение, вычитание, умножение и возведение в степень, DevNet / DevOps курсы бесплатно Рига

Скорее всего, в 2023 году самым простым способом быстро стать айтишником являются курсы по программируемым сетям и системам. Потому что в данной сфере можно получить необходимый минимум знаний всего за несколько месяцев. Тогда как на программиста или системного администратора учатся годами. Достаточно освоить основы сетевых технологий, базовые навыки администрирования Линукс и немного разработки ПО. Сегодня мы расскажем о том, как работают арифметические операции в Python, это входит в DevNet / DevOps курсы бесплатно Рига.
Сложение и вычитание в Python, DevNet / DevOps курсы бесплатно Рига
Стоит отметить, что в рамках этой короткой статьи мы расскажем о сложении, вычитании, умножении и возведении в степень. Тогда как деление будет подробно рассмотрено в отдельной статье. Прежде всего, потому что с делением не все так просто, как с другими операциями. Безусловно, для лучшего понимания этой темы советуем пройти курсы DevOps / DevNet бесплатно Рига.
Итак, начнем с самого простого — с оператора сложения в Python. Чтобы сложить два числа или две переменных — используйте знак «плюс» («+»), расположенный между ними. Стоит отметить, что результат будет разным при использовании с разными типами данных:
- числа будут сложены вместе по правилам арифметики;
- строки или списки — будут склеены (пример: ‘st’ + ‘ring’ даст результат ‘string’).
Далее идет операция вычитания, для ее применение — просто поставьте знак «минус» между числами или переменными. Стоит отметить, что данная операция не работает с переменными, имеющими строчный тип данных. А также она не работает со списками, в результате подобной операции вы получите ошибку.
Помимо всего прочего, нужно помнить и о том, как обрабатываются в математических операциях числа с плавающей точкой. А именно — если один операнд имеет целочисленный тип, а другой — дробный, то результат всегда будет дробным. Даже если дробная часть в результате операции остается равна нулю. Пример: 4.4 — 2.4 = 2.0 (а не просто «2»). Чтобы узнать больше о сложении и вычитании в Python — советуем пройти курс DevOps / DevNet скачать торрент Рига.
Умножение и возведение числа в степень
Теперь давайте перейдем к операциям умножения и возведения в степень. И начнем с умножения, потому что его приходится применять чаще. Чтобы умножить два числа или переменных в Python — следует поставить между ними знак «звездочка» («*»). Подобно сложению, данная арифметическая операция работает не только с числами. В зависимости от типа данных, вы получите следующий результат:
- с двумя числовыми значениями — результат умножения первого и второго операндов;
- с одним числовым и одним строчным значениями — новую строку, состоящую из повторения исходной строки указанное число раз;
- с одним числовым значением и одним списком — новый список, элементы которого повторяются указанное число раз.
При этом нельзя умножить, к примеру, два списка или две строки. Либо же строку на список. Во всех подобных случаях интерпретатор выдаст ошибку. Чтобы узнать все о допустимых типах данных для разных операций — советуем пройти курсы DevOps / DevNet azure Рига.
Теперь перейдем к операции возведения в степень. Стоит отметить, что она очень сильно похожа на умножение. Для того, чтобы возвести первое число в степень, равную второму числу — поставьте между ними два символа «звездочка» без пробелов между ними («**»).
При этом данная процедура имеет все те же ограничения, что и умножение. То есть, вы не сможете возвести в степень строку или список. Так как это подразумевает их умножение на самих себя. Следовательно, в результате вами будет получена ошибка. Возведение в степень, которая больше 0, но меньше единицы, позволяет получить математический корень с соответствующей основой. Возведение в степень меньше 1 — позволяет получить результат деления единицы на число в соответствующей степени.
Python: Арифметические операции
На базовом уровне компьютеры оперируют только числами. Даже в прикладных программах на высокоуровневых языках внутри много чисел и операций над ними. Но для старта достаточно знать обычную арифметику — с нее и начнем.
Например, для сложения двух чисел в математике мы пишем: 3 + 4 . В программировании — то же самое. Вот программа, которая складывает два числа:
3 + 4
Арифметика в программировании практически не отличается от школьной арифметики.
Строчка кода 3 + 4 заставит интерпретатор сложить числа и узнать результат. Эта программа будет работать, но в ней нет смысла. По сути, мы не даем команду интерпретатору, мы просто говорим ему: «смотри, сумма трех и четырех». В реальной работе недостаточно сообщать интерпретатору о математическом выражении.
Например, если создавать интернет-магазин, недостаточно просить интерпретатор посчитать стоимость товаров в корзине. Нужно просить посчитать стоимость И показать цену покупателю.
Нам нужно попросить интерпретатор сложить 3 + 4 И дать команду сделать что-то с результатом. Например, вывести его на экран:
# Сначала вычисляется сумма, # затем она передается в функцию печати print(3 + 4)
После запуска на экране появится результат:
Кроме сложения доступны следующие операции:
- — — вычитание
- * — умножение
- ** — возведение в степень
- / — деление
- // — целочисленное деление
- % — остаток от деления
Теперь выведем на экран результат деления, а потом результат возведения в степень:
print(8 / 2) # => 4.0 (При делении двух чисел получается тип данных float) print(3 ** 2) # => 9
Иногда для удобства мы будем показывать в комментариях результат запуска строчек кода вот так: => РЕЗУЛЬТАТ . Например, # => 4 .
Первая инструкция выведет на экран 4 (потому что 8 / 2 равно 4), а вторая инструкция выведет на экран 9 (потому что 3 2 равно 9).
Задание
Выведите на экран результат деления числа 81 на 9 .
Упражнение не проходит проверку — что делать?
Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:
- Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
В моей среде код работает, а здесь нет
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Мой код отличается от решения учителя
Это нормально , в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Полезное
- Всегда отбивайте арифметические операторы пробелами от самих чисел (операндов) – это хороший стиль программирования. Поэтому в наших примерах print(3 + 4) , а не print(3+4) .
- Деление на ноль — порождает ошибку.
- Деление с остатком
Определения
- Инструкция — наименьшая автономная часть языка программирования; команда или набор команд. Программа обычно представляет собой последовательность инструкций.
Нашли ошибку? Есть что добавить? Пулреквесты приветствуются https://github.com/hexlet-basics
Если вы столкнулись с трудностями и не знаете, что делать, задайте вопрос в нашем большом и дружном сообществе
- Привет, Мир!
- Комментарии
- Инструкции (Statements)
- Как мы проверяем ваши решения
- Синтаксические ошибки
- Арифметические операции
- Операторы
- Коммутативная операция
- Композиция операций
- Приоритет
- Числа с плавающей точкой
- Линтер
- Кавычки
- Экранированные последовательности
- Конкатенация
- Кодировка
- Что такое переменная
- Изменение переменной
- Выбор имени переменной
- Ошибки при работе с переменными
- Выражения в определениях
- Переменные и конкатенация
- Именование переменных
- Магические числа
- Константы
- Интерполяция
- Извлечение символов из строки
- Срезы строк
- Multi-line строки
- Типы данных
- Сильная (или Строгая) типизация
- Неизменяемость примитивных типов
- Явное преобразование типов
- Функции и их вызов
- Сигнатура функции
- Аргументы по умолчанию
- Вызов функции — выражение
- Функции с переменным числом параметров
- Детерминированность
- Стандартная библиотека
- Объекты
- Неизменяемость
- Методы как выражения
- Цепочка вызовов
- Создание (определение) функций
- Возврат значений
- Параметры функций
- Необязательные параметры функций
- Именованные аргументы
- Аннотации типов
- Логический тип
- Предикаты
- Комбинирование операций и функций
- Логические операторы
- Отрицание
- Результат логических выражений
- Условная конструкция (if)
- Условная конструкция else
- Конструкция else + if = elif
- Тернарный оператор
- Оператор Match
- Цикл While
- Агрегация данных (Числа)
- Агрегация данных (Строки)
- Обход строк
- Условия внутри тела цикла
- Формирование строк в циклах
- Пограничные случаи
- Синтаксический сахар
- Возврат из циклов
- Цикл For
- Цикл for и функция range