Lesson 2
Целочисленные и плавающие числа
1. Целочисленная арифметика
Нам уже известны следующие операторы, которые могут быть применены к числам: +
, -
, *
и **
. Оператор деления /
для целых чисел дает действительное число с плавающей запятой (объект типа float
). Экспоненциальность **
также возвращает float, когда мощность отрицательная:
print(17 / 3) # дает 5.66666666667 print(2 ** 4) # дает 16 print(2 ** -2) # дает 0,25
Существует специальная операция для целочисленного деления, где остаток отбрасывается: //
. Операция, которая дает остаток от такого деления, выглядит как %
. Обе операции всегда дают объект типа int
.
print(17 / 3) # дает 5.66666666667 print(17 // 3) # дает 5 print(17 % 3) # дает 2
2. Числа с плавающей запятой
Когда мы читаем целочисленное значение, мы читаем строку с input()
а затем приводим строку в целое число с помощью функции int()
. Когда мы читаем число с плавающей запятой, нам нужно отбросить строку для float с помощью float()
:
x = float(input()) print(x)
Поплавки с очень большой или очень малой абсолютной величиной могут быть написаны с использованием научной нотации. Например, расстояние от Земли до Солнца составляет 1.496 · 10 11 , или 1.496e11
в Python. Масса одной молекулы воды составляет 2,99 · 10 -23 , или 2.99e-23
в Python.
Можно поместить объекты float в объекты int, отбросив часть дроби, используя функцию int()
. Эта функция демонстрирует так называемое округление к нулевому поведению:
print(int(1.3)) # дает 1 print(int(1.7)) # дает 1 print(int(-1.3)) # дает -1 print(int(-1.7)) # дает -1
Существует также функция round()
которая выполняет обычное округление:
print(round(1.3)) # дает 1 print(round(1.7)) # дает 2 print(round(-1.3)) # дает -1 print(round(-1.7)) # дает -2
Действительные числа с плавающей запятой не могут быть представлены с точной точностью из-за ограничений аппаратного обеспечения. Это может привести к громоздким последствиям. Подробные сведения см. В документах Python .
print(0.1 + 0.2) # дает 0.30000000000000004
3. математический модуль
Python имеет множество вспомогательных функций для вычислений с поплавками. Их можно найти в math
модуле.
Чтобы использовать этот модуль, нам нужно сначала его импортировать, написав следующую инструкцию в начале программы:
import math
Например, если мы хотим найти значение потолка для x
- наименьшее целое число не менее x
- мы вызываем соответствующую функцию из математического модуля: math.ceil(x)
. Синтаксис для вызова функций из модулей всегда один и тот же: module_name.function_name(argument_1, argument_2, ...)
import math x = math.ceil(4.2) print(x) print(math.ceil(1 + 3.8))
Существует еще один способ использования функций из модулей: для импорта определенных функций путем их именования:
from math import ceil x = 7 / 2 y = ceil(x) print(y)
Некоторые функции, относящиеся к числам - int()
, round()
и abs()
(абсолютное значение aka moduleulus), являются встроенными и не требуют импорта.
Все функции любого стандартного модуля Python документируются на официальном веб-сайте Python. Вот описание для математического модуля . Дано описание некоторых функций:
функция | Описание |
---|---|
округление | |
floor(x) | Верните пол x, наибольшее целое число меньше или равно x. |
ceil(x) | Верните потолок x, наименьшее целое число, большее или равное x. |
Корни и логарифмы | |
sqrt(x) | Верните квадратный корень из x |
log(x) | С одним аргументом верните натуральный логарифм x (в базу e). С двумя аргументами верните логарифм x в заданную базу |
e | Математическая константа e = 2,71828 ... |
тригонометрия | sin(x) | Вернуть синус x радианов |
asin(x) | Вернуть арксинус x, в радианах |
pi | Математическая константа π = 3.1415 ... |