Python Number
Типы данных Python Number используются для хранения числовых значений.
Типы данных неизменяемы, что означает, что при изменении значения типа данных Number область памяти будет перераспределена.
В следующих примерах объекты Number создаются при присваивании значений переменным:
var1 = 1 var2 = 10
Вы также можете использовать оператор del для удаления некоторых ссылок на объекты Number.
Синтаксис оператора del:
del var1[,var2[,var3[....,varN]]]]
С помощью оператора del можно удалить один или несколько объектов, например:
del var del var_a, var_b
Python поддерживает четыре различных числовых типа:
- Целое число (Int)- Обычно называется целым числом или целым, это положительное или отрицательное целое число без десятичной точки.
- Длинные целые числа- Целые числа неограниченного размера, с заглавной или строчной L в конце.
- Вещественные значения с плавающей точкой- Типы с плавающей точкой состоят из целой части и дробной части. Типы с плавающей точкой также могут быть выражены в экспоненциальной записи (2.5e2 = 2.5 x 102 = 250)
- Комплексные числа- Комплексные числа состоят из действительной части и мнимой части. Они могут быть выражены как a + bj или complex(a, b). Как действительная часть a, так и мнимая часть b комплексного числа являются типами с плавающей точкой.
| int | long | float | сложная |
|---|---|---|---|
| 10 | 51924361L | 0.0 | 3.14j |
| 100 | -0x19323L | 15.20 | 45.j |
| -786 | 0122L | -21.9 | 9.322e-36j |
| 080 | 0xDEFABCECBDAECBFBAEl | 32.3+e18 | .876j |
| -0490 | 535633629843L | -90. | -.6545+0J |
| -0x260 | -052318172735L | -32.54e100 | 3e+26J |
| 0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
- Длинные целые числа также могут использовать строчную "L", но всё же рекомендуется использовать заглавную "L", чтобы избежать путаницы с числом "1". Python использует "L" для отображения длинных целых чисел.
- Python также поддерживает комплексные числа. Комплексные числа состоят из действительной части и мнимой части. Они могут быть выражены как a + bj или complex(a, b). Как действительная часть a, так и мнимая часть b комплексного числа являются типами с плавающей точкой.
Преобразование типов чисел Python
int(x [,base ]) 将x转换为一个整数 long(x [,base ]) 将x转换为一个长整数 float(x ) 将x转换到一个浮点数 complex(real [,imag ]) 创建一个复数 str(x ) 将对象 x 转换为字符串 repr(x ) 将对象 x 转换为表达式字符串 eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象 tuple(s ) 将序列 s 转换为一个元组 list(s ) 将序列 s 转换为一个列表 chr(x ) 将一个整数转换为一个字符 unichr(x ) 将一个整数转换为Unicode字符 ord(x ) 将一个字符转换为它的整数值 hex(x ) 将一个整数转换为一个十六进制字符串 oct(x ) 将一个整数转换为一个八进制字符串
Модуль math Python, модуль cmath
Функции, обычно используемые для математических операций в Python, в основном находятся в модуле math и модуле cmath.
Модуль math Python предоставляет множество функций математических операций для чисел с плавающей точкой.
Модуль cmath Python содержит некоторые функции для операций с комплексными числами.
Функции в модуле cmath в основном такие же, как и в модуле math. Разница в том, что модуль cmath работает с комплексными числами, а модуль math выполняет математические операции.
Чтобы использовать функции math или cmath, необходимо сначала импортировать их:
import math
Просмотреть содержимое пакета math:
>>> import math >>> dir(math) ['__doc__', '__file__', '__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', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc'] >>>
Конкретное применение каждой функции будет представлено ниже.
Просмотреть содержимое пакета cmath
>>> import cmath >>> dir(cmath) ['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'cos', 'cosh', 'e', 'exp', 'inf', 'infj', 'isclose', 'isfinite', 'isinf', 'isnan', 'log', 'log10', 'nan', 'nanj', 'phase', 'pi', 'polar', 'rect', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau'] >>>
Пример
>>> import cmath >>> cmath.sqrt(-1) 1j >>> cmath.sqrt(9) (3+0j) >>> cmath.sin(1) (0.8414709848078965+0j) >>> cmath.log10(100) (2+0j) >>>
Математические функции Python
| Функция | Возвращаемое значение (Описание) |
|---|---|
| abs(x) | Возвращает абсолютное значение числа, например, abs(-10) возвращает 10 |
| ceil(x) | Возвращает ближайшее большее целое число, например, math.ceil(4.1) возвращает 5 |
| cmp(x, y) | Если x < y, возвращает -1; если x == y, возвращает 0; если x > y, возвращает 1 |
| exp(x) | Возвращает e в степени x (ex), например, math.exp(1) возвращает 2.718281828459045 |
| fabs(x) | Возвращает абсолютное значение числа в виде числа с плавающей точкой, например, math.fabs(-10) возвращает 10.0 |
| floor(x) | Возвращает целую часть числа с округлением вниз, например, math.floor(4.9) возвращает 4 |
| log(x) | Например, math.log(math.e) возвращает 1.0, math.log(100,10) возвращает 2.0 |
| log10(x) | Возвращает десятичный логарифм x, например, math.log10(100) возвращает 2.0 |
| max(x1, x2,...) | Возвращает максимальное значение заданных аргументов, которые могут быть последовательностью. |
| min(x1, x2,...) | Возвращает минимальное значение заданных аргументов, которые могут быть последовательностью. |
| modf(x) | Возвращает целую и дробную части x. Знаки обеих частей совпадают со знаком x, а целая часть представлена как число с плавающей запятой. |
| pow(x, y) | Значение после операции x**y. |
| round(x [,n]) | Возвращает округлённое значение числа с плавающей запятой x. Если задано значение n, оно представляет количество цифр после десятичной точки, до которых следует округлить. |
| sqrt(x) | Возвращает квадратный корень из x. |
Функции случайных чисел в Python
Случайные числа могут использоваться в математике, играх, безопасности и других областях. Их также часто встраивают в алгоритмы для повышения эффективности алгоритмов и усиления безопасности программ.
Python включает следующие часто используемые функции генерации случайных чисел:
| Функция | Описание |
|---|---|
| choice(seq) | Случайным образом выбирает элемент из элементов последовательности, например random.choice(range(10)) случайным образом выбирает целое число от 0 до 9. |
| randrange ([start,] stop [,step]) | Возвращает случайное число из множества, элементы которого увеличиваются с заданным шагом в указанном диапазоне. Значение шага по умолчанию — 1. |
| random() | Случайным образом генерирует следующее вещественное число, находящееся в диапазоне [0, 1). |
| seed([x]) | Измените начальное значение генератора случайных чисел. Если вы не понимаете его принцип, не обязательно задавать начальное значение специально; Python выберет его за вас. |
| shuffle(lst) | Случайным образом перемешать все элементы последовательности. |
| uniform(x, y) | Случайным образом сгенерировать следующее вещественное число в диапазоне [x, y]. |
Тригонометрические функции Python
Python включает следующие тригонометрические функции:
| Функция | Описание |
|---|---|
| acos(x) | Возвращает значение арккосинуса x в радианах. |
| asin(x) | Возвращает значение арксинуса x в радианах. |
| atan(x) | Возвращает значение арктангенса x в радианах. |
| atan2(y, x) | Возвращает арктангенс заданных значений координат X и Y. |
| cos(x) | Возвращает косинус x радиан. |
| hypot(x, y) | Возвращает евклидову норму sqrt(x*x + y*y). |
| sin(x) | Возвращает синус x радиан. |
| tan(x) | Возвращает тангенс x радиан. |
| degrees(x) | Преобразует радианы в градусы, например, degrees(math.pi/2) возвращает 90.0. |
| radians(x) | Преобразует градусы в радианы. |
Математические константы Python
| Константа | Описание |
|---|---|
| пи | Математическая константа pi (отношение длины окружности к диаметру, обычно обозначается π). |
| e | Математическая константа e, то есть натуральная константа. |