Загрузка [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js
 

printЯзык Python

printОперации и математические функции

Приоритеты операций

Операция Описание
x[i]
x(…)
получение i-го элемента последовательности: xi, нумерация с 0
вызов функции
x**y возведение в степень: xy
+x
-x
~x
x
смена знака: -x
поразрядное отрицание: -(x+1)
x*y
x@y
x/y
x//y
x%y
умножение
матричное умножение (для типов, определяемых программистом)
деление
деление нацело
остаток от деления
x+y
x-y
сложение
вычитание
x<<y
x>>y
сдвиг битов влево: x2y
сдвиг битов вправо: x/(2y)
x&y поразрядная операция И
x^y поразрядная операция исключающая ИЛИ: xy
x|y поразрядная операция ИЛИ
x in y, x not in y
x is y, x is not y
x<y, x<=y, x>y, x>=y, x!=y, x==y
x есть/нет в коллекции/последовательности y
x ссылается на тот же объект, что и y
сравнения, можно комбинировать несколько сравнений: x==y==z, x<=y<z
not x логическое НЕ
x and y логическое И
x or y логическое ИЛИ
x if y else z если y, то результат x иначе результат z
x:=y присваивание внутри выражений
x=[10,11,12]
print(x[1]) # 11
print(5/2) # 2.5
print(5//2) # 2
print(5%2) # 1
print(2 in {1,2,3}) # True
print(2 in x) # False
Ввод:

Выполнить
Вывод:

Операции +, - , @, /, //, %, *, >>, <<, &, ^, | можно комбинировать с присваиванием: x+=y выполняется как x=x+(y), где y – произвольное выражение.

x=10
x+=2
print(x) # 12
Ввод:

Выполнить
Вывод:

Математические функции определяются в модулях math и cmath, несколько функций являются встроенными. Для использования модулей нужно написать

import math
# появляется переменная math, содержащая константы и функции из модуля math
print(math.sqrt(math.pi))
from math import sqrt,pi
from cmath import sqrt as csqrt
# появляются переменные sqrt=math.sqrt, pi=math.pi, csqrt=cmath.sqrt
print(sqrt(pi))
print(сsqrt(-1.0)) # 1j
from math import *
# появляются переменные для всех функций и констант из math
# делать from cmath import * не рекомендуется, так как одноименные функции из math будут заменены
print(sqrt(pi))
Функция Описание Пример Результат
константы math
pi Число π math.pi 3.141592653589793
e Число e=2.7182818... math.e 2.718281828459045
inf +oo math.inf inf
nan не число, если результат не может быть вычислен (inf-inf) math.nan nan
встроенные
abs(x) |x| абсолютная величина, модуль числа abs(-2.5) 2.5
round(x) округление к ближайшему целому round(3.7) 4
int(x) преобразование в целое число int(3.7) 3
float(x) преобразование в число с плавающей точкой float(3) 3.0
divmod(x,y) кортеж из целого частного и остатка от деления x на y divmod(25, 7) (3, 4)
max(x,y) максимум, можно указать больше аргументов или последовательность max(5, 12, 4) 12
min(x,y) минимум, можно указать больше аргументов или последовательность min(5, 12, 4) 4
sum(p) сумма последовательности sum([5, 12, 4]) 21
только в cmath
phase(c) угол cmath.phase(0+1j) 1.5707963267948966 # pi//2
polar(c) перевод в полярные координаты, кортеж из радиуса и угла cmath.polar(1+1j) (1.4142135623730951, 0.7853981633974483) # (sqrt(2),pi//4)
rect(r,phi) перевод в декартовы координаты c=cmath.rect(1,math.pi/6)
x=c.real
y=c.imag
0.8660254037844387+0.5j
в math и cmath
sin(x) sin x, x в радианах math.sin(math.pi/6) 0.5
cos(x) cos x math.cos(math.pi/6) 0.8660254037844387 # sqrt(3)//2
tan(x) "tg"\ x math.tan(math.pi/6) 0.5773502691896257 # sqrt(3)//3
asin(x) arcsin x math.asin(0.5) 0.5235987755982989 # pi//6
acos(x) arccos x math.acos(0.8660254037844387) 0.5235987755982989 # pi//6
atan(x) "arctg"\ x, результат в [ -pi/2; +pi/2 ]
exp(x) e^x math.exp(1.0) 2.718281828459045
log(x) ln x math.log(math.e**2) 2.0
log(x,b) log_b x math.log(1024,2) 10.0
log10(x) "lg"\ x math.log10(1000) 3.0
sqrt(x) sqrt x math.sqrt(2) 1.4142135623730951
только в math
ceil(x) |~ x ~| потолок, "округление" вверх math.ceil(3.1)
math.ceil(-3.1)
4
-3
floor(x) |__ x __| пол, "округление" вниз math.floor(3.1)
math.floor(-3.1)
3
-4
trunc(x) целая часть числа [x] math.trunc(3.1)
math.trunc(-3.1)
3
-3
fmod(x,y) остаток от деления x на y для чисел с плавающей точкой: x - [x//y] * y
дробная часть числа {x} может вычислена как fmod(x,1.0) или x%1
math.fmod(2.5, 0.7) 0.4
atan2(y,x) "arctg"\ y/x, результат в [ -pi; +pi ] math.atan2(-2, 0.5) -1.3258176636680326 # cmath.phase(0.5-2j)
degrees(x) перевод в градусы math.degrees(math.pi/6) 30.0
radians(x) перевод в радианы math.radians(30) 0.5235987755982988
exp2(x) 2^x math.exp2(10) 1024.0
log2(x) log_2 x math.log2(1024) 10.0
cbrt(x) root 3 x math.cbrt(2) 1.259921049894873
hypot(x,y) sqrt{x^2+y^2}, можно указать 3 и больше координат math.hypot(1,2) 2.23606797749979 # sqrt(5)
dist(p,q) расстояние между 2 точками math.dist((5,3),(4,1)) 2.23606797749979
sumprod(p,q) скалярное произведение math.sumprod((5,3),(4,1)) 23
comb(n,k) количество сочетаний C_n^k={n!}/(k!(n-k)!) или ((k),(n)) math.comb(4,2) 6
perm(n,k) количество размещений A_n^k={n!}/((n-k)!) math.perm(4,2) 12
factorial(n) количество перестановок n! math.factorial(4) 24
isqrt(n) floor(sqrt(n)) math.isqrt(1000) 31
gcd(a,b) НОД(a,b), можно указать больше аргументов math.gcd(150, 12) 6
lcm(a,b) НОК(a,b), можно указать больше аргументов math.lcm(150, 12) 300
loading