Вычисления в python
Хорошего дня! Сегодня мы научимся умножать, делить, вычитать. В каком смысле ты это уже умеешь?! А ты в этом уверен? В любом случае, повторение — это мать учения, так что устраивайся по-удобнее, мы начинаем.
Арифметические операции в python
Вы считаете, что арифметические операции — это просто? Пересчитайте. На самом деле, всё не так страшно, но расслабляться не стоит.
Начнём со всем знакомой четверки:
print ( 10 + 10 )
# 10
print ( 10 — 5 )
# 5
print ( 11 * 7 )
# 77
print ( 10 / 2 )
# 5.0
Никаких неожиданностей, правда? Не совсем, посмотрите внимательно на операцию деления. Заметили? Мы разделили целое число на его делитель, но несмотря на это, результат имеет тип float . Взглянем на операцию деления чуть более пристально:
print ( 10 / 2 )
# 5.0
print ( 100 / 3 )
# 33.333333333333336
print ( 21 / 4 )
# 5.25
print ( 23 / 7 )
# 3.2857142857142856
Обратите внимание на деление 100 / 3 . Выполнив эту операцию, мы получили очень интересный результат 33.333333333333336 . На конце 6 ?! Вспомним перевод числа в двоичную систему счисления. То есть мы можем представить любое число в виде ноликов и единичек, например:
37 = 2^5 + 2^2 + 2^0 = 100101 .
А как обстоит дело с дробями? Точно также:
0.75 = 0.5 + 0.25 = 1/2 + 1/4 = 0.11
Возникает вопрос, как перевести в двоичную систему такие дроби: 1/3
1/3 = 1/4 + 1/8 + 1/16 + 1/32 + .
Это может продолжаться бесконечно долго. Поэтому python прерывает выполнение таких вычислений и часто выдает такие приколы:
print ( 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 )
# 0.7999999999999999
print ( 0.1 + 0.2 )
# 0.30000000000000004
print ( 7 / 3 )
# 2.3333333333333335
Еще немного математики. Математика в каждый дом!
# Возведение в степень
print ( 10 * * 2 )
# 100
print ( 2 * * 4 )
# 16
print ( 3 * * 0.5 )
# 1.7320508075688772
print ( 3 * * — 2 )
# 0.1111111111111111
# Остаток от деления
print ( 11 % 4 )
# 3
print ( 101 % 7 )
# 3
print ( 34 % 5 )
# 4
# Деление нацело
print ( 20 // 4 )
# 5
print ( 129 // 11 )
# 11
print ( 100 // 61 )
# 1
Операции сравнения в python
Операции сравнения в отличие от арифметические имеют всего два результата: True и False . Чаще всего такие операции используются в условии циклов, условных оператов, а также в некоторых функциях, например, filter .
# Операция равенства: True, если X равен Y
print ( 10 == 10 )
# True
print ( 666 == 661 )
# False
# Операция неравенства: True, если X не равен Y
print ( 666 != 661 )
# True
print ( 666 != 666 )
# False
# Операция больше: True, если X больше Y
print ( 120 > 2 )
# True
print ( 1000 > 1999 )
# False
# Операция меньше: True, если X меньше Y
print ( 121 120 )
# False
print ( 0 1 )
# True
# Операция меньше или равно: True, если X меньше или равен Y
print ( 6 6 )
# True
print ( 5 2 )
# False
# Операция больше или равно: True, если X больше или равен Y
print ( 1000 >= 10000 )
# False
print ( 9999 >= 9999 )
# False
Логические операции в python
Логические операции, как и операции сравнения, имеют всего два возможных результата: True и False . Используются для объединения операций сравнения в условиях циклов, условных оператов, а также в некоторых функциях, например, filter .
# Оператор «and» или конъюнкция.
# True, если и выражение X, и выражение Y равны True
print ( 10 == 10 and 10 > 2 )
# True
print ( 666 == 661 and 9 > 0 )
# False
# Оператор «or» или дизъюнкция.
# True, если или выражение X, или выражение Y равны True
print ( 666 == 661 or 9 > 0 )
# True
print ( 666 == 661 or 9 0 )
# False
# Оператор «not» или инверсия меняет значение на противоположное.
# True, если выражение X равно False
print ( not 120 > 2 )
# False
print ( not 1000 999 )
# True
print ( not ( 121 121 and 10 == 2 ))
# True
Округление чисел в python
Всё дело в округлении! В python есть несколько замечательных функций, которые округляют число до указанного знака. Одной из таких функций является round :
pi = 3.14159265358979323846264338327
print (round(pi, 1 ))
# 3.1
print (round(pi, 2 ))
# 3.14
print (round(pi, 3 ))
# 3.12
print (round(pi, 4 ))
# 3.1416
print (round(pi, 10 ))
# 3.1415926536
print (round(pi, 15 ))
# 3.141592653589793
Рассмотрим любопытный пример:
print (round( 2.5 ))
# 2
print (round( 3.5 ))
# 4
Если на вашем лице застыл немой вопрос: «почему?», то я вас понимаю. В школе нас учили, что дроби 1.1, 1.2, 1.3, 1.4 округляются до единицы, а 1.5, . 1.9 до двойки. Но python думает по-другому. Есть два типа округления: арифметическое и банковское. Именно арифметическому округлению вас учили в школе. Python использует как раз-таки банковское округление, его еще называют округлением до ближайшего четного. Приведу еще несколько примеров:
print (round( 10.51213 ))
# 11
print (round( 23.5 ))
# 24
print (round( 22.5 ))
# 22
Модуль math
Модуль math представляет собой набор математических формул. Рассмотрим несколько примеров:
print ( dir (math))
[‘__doc__’, ‘__loader__’, ‘__name__’, ‘__package__’, ‘__spec__’, ‘acos’,
‘acosh’, ‘asin’, ‘asinh’, ‘atan’, ‘atan2’, ‘atanh’, ‘ceil’, ‘copysign’,
‘cos’, ‘cosh’, ‘degrees’, ‘e’, ‘erf’, ‘erfc’, ‘exp’, ‘expm1’, ‘fabs’,
‘factorial’, ‘floor’, ‘fmod’, ‘frexp’, ‘fsum’, ‘gamma’, ‘gcd’, ‘hypot’,
‘inf’, ‘isclose’, ‘isfinite’, ‘isinf’, ‘isnan’, ‘ldexp’, ‘lgamma’, ‘log’,
‘log10’, ‘log1p’, ‘log2’, ‘modf’, ‘nan’, ‘pi’, ‘pow’, ‘radians’, ‘remainder’,
‘sin’, ‘sinh’, ‘sqrt’, ‘tan’, ‘tanh’, ‘tau’, ‘trunc’]
import math
# Синус 3.14 радиан
print (math. sin ( 3.14 ))
# 0.0015926529164868282
# Косинус 1.1 радиан
print (math. cos ( 1.1 ))
# 0.4535961214255773
# Возведение экспоненты в 3 степень
print (math. exp ( 3 ))
# 20.085536923187668
# Натуральный логарифм 61
print (math. log ( 61 ))
# 4.110873864173311
# Факториал четырех
print (math. factorial ( 4 ))
# 24
# Извлечение квадратного корня
print (math. sqrt ( 9 ))
# 3.0
# Алгоритм Евклида для чисел 20 и 19
print (math. gcd ( 20 , 19 ))
# 1
# Вычисление гипотенузы треугольника с катетами 3 и 4
print (math. hypot ( 3 , 4 ))
# 5.0
# Перевод радиан в градусы
print (math. degrees ( 1.572 ))
# 90.06896539456541
# Факториал четырех
print (math. fmod ( 20 , 3 ))
# 24
И это далеко не всё! Остальные функции я предлагаю вам протестировать самостоятельно : )
Python возведение в степень

Статьи
Введение
В ходе статьи рассмотрим три способа возведения числа в степень на Python.
Возведение числа в степень оператором **
В первом способе воспользуемся оператором **. Принцип работы очень прост, сначала пишем число, которое нужно возвести в степень, ставим оператор, и пишем число степени:
Возведение числа в степень функцией pow()
Помимо оператора ** в Python есть функция pow(). В неё нужно передать два аргумента, первым будет являться число, которое нужно возвести в степень, а вторым число степени:
В стандартной библиотеке Python есть модуль под названием math. В данном модуле существует своя функция для возведения в степень, и называется она pow(). Работает она по тому же принципу, но возвращает итоговый результат в типе данных float:
Возведение числа в степень функцией power()
В данном способе мы будем использовать библиотеку под названием numpy. Так как данный модуль не входит в стандартную библиотеку Python, его нужно установить, для этого нужно перейти в терминал, или же командную строку, прописать pip install numpy, нажать Enter и ждать инсталляции.
В numpy есть функция под названием power(), благодаря как раз таки и можно возводить числа в степень:
Заключение
В ходе статьи мы с Вами рассмотрели целых три способа возведения чисел в степень на Python. Надеюсь Вам понравилась статья, желаю удачи и успехов!
Числа и математические функции в Python
Говоря о числах, мы пройдемся по наиболее часто используемым математическим операторам, которые нужны для выполнения простых арифметических операций с числами в Python. А в разделе «Математические функции» познакомимся с функциями, которые будут очень полезны при вычислении сложных математических выражений: возведение в степень, синус/косинус, факториалы и т. д. Приступим.
Перед прочтением статьи рекомендуем открыть IDLE. По ходу чтения копируйте примеры и прогоняйте их через компилятор, чтобы на практике понять, как работает тот или иной оператор или функция.
Числа
Python есть 6 основных «математических» операторов:
- сложение;
- вычитание;
- умножение;
- деление;
- возведение в степень.
- остаток от деления (mod);
- целочисленное деление (div).
Большинство из вас должно быть знакомо со всеми вышеперечисленными операторами, кроме оператора взятия остатка от деления и целочисленного деления. Не волнуйтесь, мы поговорим об этом. Начнем с начала.
Сложение
Несложно догадаться, что делает этот оператор: он просто складывает числа. Чтобы проверить, как это работает, просто перейдите в IDLE и введите число, затем знак сложения + (плюс), а затем еще одно число, которое нужно добавить к первому числу. Нажмите Enter. Это должно выглядеть так, как показано ниже.
Пример: сложим 8 и 19.
После нажатия клавиши Enter чуть ниже строки кода появится ответ. Вывод так и будет отображаться каждый раз — чуть ниже кода. Нажимаете Enter — получаете результат.
Не останавливайтесь на этом примере, попробуйте использовать оператор сложения с другими числами. Например, попробуйте сложить числа с плавающей точкой: 4.5 + 5.5 и т. д.
У вычитания такой же синтаксис, как и у сложения. Просто измените оператор на знак вычитания — (минус). Так же выберите случайные числа и попробуйте вычесть одно из другого.
Пример: вычтем из 89.33 число 23.67. Ответ 65.55.
Умножение
Опять то же самое! Просто измените оператор на * (звездочку). Вы ведь знаете, что он используется для умножения, верно? Попробуйте использовать оператор в IDLE.
Пример: возьмите любые два числа и умножьте их с помощью оператора умножения, как показано ниже.
Деление
На этот раз нам понадобится знак / (слэш). Попробуйте использовать оператор со случайными числами.
Если вы новичок, то можете столкнуться с некоторыми трудностями. Какими? Сейчас узнаем. Для начала возьмем целые числа (числа без десятичной дроби), например 16 и 2, и разделим одно на другое.
Возведение в степень
Этого математического оператора обычно в языках программирования нет. Честно говоря, языков со встроенным возведением в степень, кроме Python, и не припомнить. В других языках для возведения в степень используют другие операторы. В Python же для этого достаточно поставить между двумя числами ** (две звездочки). Правое число возведется в степень, равную левому числу. Например, чтобы найти 10 степень числа 2, нужно написать:
Теперь мы знаем обо всех часто используемых математических операторах Python. Попробуйте объединить несколько операторов и использовать их в одном выражении. Например, введите ((2**5)*10)/3 . Python должен вывести 106.66666666666667 .
Взятие остатка от деления
Оператор взятия остатка от деления в Python обозначается % (знак процента). Если вам знакомы другие языки программирования, скорее всего, вы знаете, что такое взятие остатка от деления. В других языках этот оператор часто называют mod. Если вы с ним еще не знакомы, ничего страшного.
Вы ведь знаете оператор деления, так? Тогда вы знаете, каков будет остаток от этого деления, верно? Этот оператор как раз и возвращает этот остаток в качестве ответа. Целая часть как бы откидывается. Вот несколько примеров.
- 12%2 = 0 , так как 12 полностью делится на 2.
- 13%2 = 1 , так как остаток от деления 13 на 2 равен 1.
- 19%5 = 4 , так как, опять же, остаток от деления 19 на 5 равен 4.
В IDLE все так же:
Целочисленное деление
Этот оператор в Python обозначается знаком // (двумя слэшами), в других языках его называют div. Оператор откидывает остаток и оставляет только целую часть. Вот как это работает:
- 13//2 = 6 , так как 13/2 = 6.5
- 19//5 = 3 , так как 19/5 = 3.8
Попробуйте использовать целочисленное деление со случайными числами в своей IDLE.
Математические функции
Когда вы узнаете о Python побольше, возможно, вам захочется создать «научный калькулятор» в качестве проекта. Для этого кроме простых математических операций вам придется реализовать математические функций: тригонометрические, логарифмические и так далее. Но даже если мы забудем о создании продвинутого калькулятора, в жизни программиста достаточно ситуаций, когда вам могут понадобиться эти функции.
Например, если вы создаете ПО для инженеров-строителей — им математические функции нужны для расчета различных параметров в конструкции, которую они строят. Или, например, аэрокосмическое ПО для расчетов траектории спутника и так далее. Короче говоря, сложные математические функции используются в совершенно различных реальных программах, так что знать о них нужно.
В Python хорошие ребята уже написали код практически для всех математических функций и добавили их в библиотеки. Так что вам вручную писать функции не придется, вы можете без зазрения совести использовать готовые решения.
Подробнее о функциях в Python мы поговорим в другой статье. Здесь мы лишь немного коснемся этого вопроса.
Функция — это фрагмент кода, который принимает (или не принимает) в качестве входных данных некоторые значения, обрабатывает их, а затем возвращает (или не возвращает) некое значение в качестве выходных данных.
Как вы можете увидеть на рисунке выше, на вход функции подается x , а на выходе функция f выводит значение f(x) . В целом, функции не обязательно принимать что-то на вход или выводить что-то. Но для математической функции важно и то, и другое. Например, чтобы вычислить sin(x) обязательно нужно значение x .
В Python есть два типа функций.
- Встроенные функции — это функции, для которых не требуется никаких сторонних файлов кода (они же модули или библиотеки). Они — часть Python и генерируются в компиляторе Python, поэтому ничего импортировать для их использования не нужно.
- Пользовательские функции требуют внешних файлов, их называют модулями. Использование этих внешних файлов в вашем коде называется импортом. Все, что вам нужно сделать, чтобы использовать функции из библиотека, это импортировать их в ваш код.
Пришло время протестировать математические функции. Начнем со степенных функций!
Возведение в степень — pow(x, y)
Я знаю, о чем вы думаете. Мы же только что возводили числа в степень, так? Так. Но тогда мы возводили число в степень при помощи оператора, а это — встроенная функция. Это альтернативный способ возведения в степень.
Поскольку это встроенная функция, импортировать никаких библиотек не нужно. На вход функция pow(x, y) принимает два числа — основание и показатель степени.
Откройте IDLE и напишите:
Теперь проанализируем, что мы написали и что сделает Python. Сначала мы ввели pow — это просто имя функции, которую мы пытаемся вызвать. Это укажет компилятору Python найти встроенную функцию с именем pow и определить, что она может делать. Далее в скобках мы написали два числа через запятую: 3 и 2. Первое число — 3 — основание, а второе — 2 — показатель степень. Иначе говоря, мы пытаемся возвести 3 во вторую степень.
Как только компилятор Python убедится, что синтаксис верен, он начнет искать реализацию функции pow и выведет ответ: 9.
Теперь вы знаете, как вызывать функции. В случае с математическими функциями в общем виде это выглядит следующим образом:
Значения в скобках, разделенные запятыми, называются аргументами. В функции pow(x, y) в примере выше аргументами являлись 3 и 2. В функции может быть любое количество аргументов. У математических функций, как правило, есть как минимум один аргумент. Давайте рассмотрим другие встроенные математические функции.
Модуль — abs(x)
Функция модуля возвращает неотрицательное значение аргумента. Иначе говоря, она не меняет неотрицательные значения, а отрицательные значения делает положительными.
Пример: модуль -3 равен 3, модуль -8.74 равен 8.74 и так далее.
Синтаксис
Так как -99.99 — отрицательное число, выводом будет положительное число — 99.99.
Теперь давайте попробуем некоторые функции, для использования которых нужно импортировать библиотеку.
Синус — sin(x)
Синус — тригонометрическая функция, она принимает только одно значение в качестве аргумента — x . Аргумент должен быть выражен в радианах, не путайте со степенью. Как мы уже сказали, эту функцию не получится использовать напрямую. Если вы попытаетесь вызвать функцию sin(x), получите сообщение об ошибке.
Дело в том, что компилятор не знает, что ему делать, когда он встречает функцию sin() , поскольку мы ее не определили. Чтобы использовать ее, придется импортировать математический модуль Python, в котором в том числе есть уже реализованная функция sin() , которая поможет компилятору понять, что делать, когда он встречает эту функцию.
То, что мы сейчас сделаем, называется импортом модуля. Для этого потребуется написать такую строку:
Жмем Enter, и готово! Теперь, чтобы использовать функцию sin(), перейдите в новую строку и введите:
Поскольку 3.14159 это приблизительно π , ответ будет близок к нулю.
Как вы можете видеть, ответ такой — 2.653589335273e-6 . Он может показаться немного пугающим, но на самом деле, это всего лишь значит следующее: 2.653589335273 × 10^-6 , что равно 0.000002653589335273 . Действительно близко к нулю.
В математическом модуле есть еще ряд полезных математических функций: floor() , exp() , log() , sqrt() и многие другие. Их полный список и количество аргументов, которые они принимают на вход, можно найти на официальном сайте Python в разделе Mathematical Functions.
Числа в Python

В программировании мы всегда взаимодействуем с данными, которые не являются какой-то абстрактной субстанцией. Все данные разделяются по определенному типу. На предыдущих уроках мы узнали, про строки, списки, словари и о логическом типе данных. Сегодня, поговорим о самом базовом типе данных в Python — числах.
Почему нельзя свалить все данные в одну общую кучу и не заморачиваться с каждым типом по отдельности? Допустим, мы присвоили переменной a цифру 5: a = 5. А теперь представьте, что никакого разделения по типу данных нет. Так что находится в переменной: число или строка? Если 10 — это число, то с ним можно произвести математические действия. А если это строка, то мы имеем дело с текстом и тогда Python задействует совсем другие методы.
# объединение строк (конкатенация)
d = '10'
f = 'негритят'
d + ' ' + f
'10 негритят'
Ключевой момент: У каждого типа данных свои методы.
Цифра 100 написанная без кавычек, относится к числовому типу данных. А цифра '100' в кавычках — к строковому типу. С помощью синтаксиса, мы сообщаем Python, какой у нас тип данных. Числа в Python делятся на два вида: целое число и вещественное.
Целое число
К целым числам (int) относятся все положительные и отрицательные числа без дробной части. Все положительные целые числа называются натуральными.
-80, -10, -4, 0, 1, 2, 20
Вещественное число
У вещественных чисел (float) всегда присутствует дробная часть, а ещё их называют числами с плавающей точкой. Поскольку дробная часть отделяется от целой части, точкой.
Математические операции с числами
Ради математических вычислений в Python и существует числовой тип данных.
Сложение чисел
e = 45 + 55
print(e)
100
Вычитание чисел
Умножение чисел
Деление чисел
У результата деления целого числа на целое, всегда будет дробная часть. Такая особенность обусловлена тем, что в большинстве случаев числа не делятся без остатка.
Целочисленное деление
В результате целочисленного деления, всегда будет целое число. Мы просто отбрасываем остаток. Число 15 поместится целых 2 раза.
Остаток от деления
Ответом будет остаток от деления. При обычном делении, ответ был бы 15.1. Но нам нужен только остаток. Убираем целое число и оставляем 1.
n = 16 % 3
print(n)
1
Возведение числа в степень
Число перед двумя звездочками — это объект, который нужно возвести в степень. Цифра после звездочек обозначает, в какую степень возводим: 4 возводим во вторую степень.
l = 4 ** 2
print(l)
16
В Python есть встроенные математические функции.
Модуль числа
Функция abs() находит модуль числа. Передаем в параметрах одно значение. Если передаваемое значение отрицательное, то abs() вернет положительное число. Модуль числа не может быть отрицательным.
Наименьшее число
Функция min() в Python возвращает самое маленькое число.
Максимальное число
Функция max() вернет самое большое число.
Округление до целого числа
Функция round() округляет до целого числа.
Вывести число в Python
Функция print() выводит числа на экран.
Ввести число в Python
Функция input() считывает вводимое значение пользователем в консоль и сохраняет его в переменной. Но что произойдет, если мы введем какое-нибудь число и затем обратимся к переменной?
Python вывел строку, так как число стоит в кавычках.
Для ввода целого числа, следует обернуть функцию input() в другую функцию int().
Для вещественного числа, соответственно в float().
Как посчитать сумму введенных чисел?
В команде input() можно передавать подсказки.
w = int(input(«Введите первое число: «))
q = int(input(«Введите второе число: «))
summa=w+q
print(summa)
Введите первое число: 6
Введите второе число: 7
13

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
Она выглядит вот так:
Комментарии ( 0 ):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.