Числа Python3 (Number)
Числовой тип данных Python используется для хранения числовых значений.
Типы данных нельзя изменять, что означает, что при изменении значения числового типа данных память будет перераспределена.
В следующем примере объект Number создаётся, когда переменной присваивается значение:
var1 = 1 var2 = 10
Вы также можете использовать инструкцию del, чтобы удалить ссылки на некоторые числовые объекты.
Синтаксис оператора del:
del var1[,var2[,var3[....,varN]]]
Вы можете удалить ссылки на один или несколько объектов с помощью инструкции del, например:
del var del var_a, var_b
Python поддерживает три различных числовых типа:
Целое число (int)- Обычно называется целым числом, это положительное или отрицательное целое число без десятичной точки. Целые числа Python3 не имеют ограничения по размеру и могут использоваться как тип Long, поэтому в Python3 нет типа Long из Python2. Логический (bool) является подтипом целого числа.
Число с плавающей точкой (float)- Число с плавающей точкой состоит из целой части и дробной части. Его также можно представить в экспоненциальной записи (2.5e2 = 2.5 x 102 = 250)
Комплексное число (complex)- Комплексное число состоит из действительной части и мнимой части. Его можно представить как a + bj, или complex(a,b). Действительная часть a и мнимая часть b комплексного числа являются типами с плавающей точкой.
Мы можем использовать шестнадцатеричную и восьмеричную системы для представления целых чисел:
>>> number = 0xA0F # 十六进制 >>> number 2575 >>> number=0o37 # 八进制 >>> number 31
| int | float | сложная |
|---|---|---|
| 10 | 0.0 | 3.14j |
| 100 | 15.20 | 45.j |
| -786 | -21.9 | 9.322e-36j |
| 080 | 32.3e+18 | .876j |
| -0490 | -90. | -.6545+0J |
| -0x260 | -32.54e100 | 3e+26J |
| 0x69 | 70.2E-12 | 4.53e-7j |
- Python поддерживает комплексные числа. Комплексное число состоит из действительной части и мнимой части. Его можно представить как a + bj, или complex(a,b). Действительная часть a и мнимая часть b комплексного числа являются типами с плавающей точкой.
Преобразование типов чисел Python
Иногда нам нужно преобразовывать встроенные типы данных. Для преобразования типа данных достаточно использовать тип данных как имя функции.
int(x)Преобразует x в целое число.
float(x)Преобразует x в число с плавающей точкой.
complex(x)Преобразовать x в комплексное число, где действительная часть равна x, а мнимая часть равна 0.
complex(x, y)Преобразовать x и y в комплексное число, где действительная часть равна x, а мнимая часть равна y. x и y — числовые выражения.
Следующий пример преобразует переменную с плавающей точкой a в целое число:
>>> a = 1.0 >>> int(a) 1
Операции с числами в Python
Интерпретатор Python может работать как простой калькулятор. Вы можете ввести выражение в интерпретаторе, и он выведет значение выражения.
Синтаксис выражений прост:+, -, *и/, как в других языках (например, Pascal или C). Например:
>>> 2 + 2 4 >>> 50 - 5*6 20 >>> (50 - 5*6) / 4 5.0 >>> 8 / 5 # 总是返回一个浮点数 1.6
Примечание:Результаты операций с плавающей точкой могут отличаться на разных машинах.
При делении целых чисел деление/всегда возвращает число с плавающей точкой. Если вам нужен только целочисленный результат, отбрасывая возможную дробную часть, можно использовать оператор// :
>>> 17 / 3 # 整数除法返回浮点型 5.666666666666667 >>> >>> 17 // 3 # 整数除法返回向下取整后的结果 5 >>> 17 % 3 # %操作符返回除法的余数 2 >>> 5 * 3 + 2 17
Примечание://Результат не обязательно имеет целочисленный тип; он зависит от типов данных знаменателя и числителя.
>>> 7//2 3 >>> 7.0//2 3.0 >>> 7//2.0 3.0 >>>
Знак равенства=используется для присваивания значений переменным. После присваивания интерпретатор не отобразит никакого результата, кроме следующего приглашения.
>>> width = 20 >>> height = 5*9 >>> width * height 900
Python может использовать**оператор для возведения в степень:
>>> 5 ** 2 # 5 的平方 25 >>> 2 ** 7 # 2的7次方 128
Переменные должны быть "определены" (т.е. им присвоено значение) перед использованием, иначе возникнет ошибка:
>>> n # 尝试访问一个未定义的变量 Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'n' is not defined
Когда в операциях смешиваются разные типы чисел, целые числа преобразуются в числа с плавающей запятой:
>>> 3 * 3.75 / 1.5 7.5 >>> 7.0 / 2 3.5
В интерактивном режиме результат последнего выведенного выражения присваивается переменной_ . Например:
>>> tax = 12.5 / 100 >>> price = 100.50 >>> price * tax 12.5625 >>> price + _ 113.0625 >>> round(_, 2) 113.06
Здесь,_ переменная должна рассматриваться пользователем как переменная, доступная только для чтения.
Математические функции
| Функция | Возвращаемое значение (Описание) |
|---|---|
| abs(x) | Возвращает абсолютное значение числа, например, abs(-10) возвращает 10 |
| ceil(x) | Возвращает ближайшее большее целое число, например, math.ceil(4.1) возвращает 5 |
cmp(x, y) |
Если x < y, вернуть -1; если x == y, вернуть 0; если x > y, вернуть 1.Устарело в Python 3, вместо этого используйте (x>y)-(x<y)。 |
| 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 включает следующие часто используемые функции генерации случайных чисел:
| Функция | Описание |
|---|---|
| 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 включает следующие тригонометрические функции:
| Функция | Описание |
|---|---|
| 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) | Преобразовать градусы в радианы |
Математические константы
| Константа | Описание |
|---|---|
| пи | Математическая константа пи (отношение длины окружности к диаметру, обычно обозначается как π) |
| e | Математическая константа e, e — это натуральная постоянная (естественная постоянная). |