Вещественные числа (float) в Python

Наверняка все, кто изучает пайтон (да и вообще любой язык программирование) задается вопросом, как тут работают числа. В сегодняшней статье мы подробно с этим разберемся с этим вопросом.

Вещественные числа float

Числа float в питоне имеют следующий вид: 4.35; 2.56 и т.д. Их отличительной чертой от главное является то, что они обязательно должны иметь.

Интересный факт: при написание чего-то подобного » .45″ компилятор не выдаст ошибку, а он поймет, что перед точкой должен стоять нуль.

Целые числа int

В python так же есть самые обычные целые числа с типом данных int. Например: 3, 6, 8, 24, 56. Подробнее обо всех возможностях с числами будет рассказано далее. Пока можно сказать только то, что в питоне можно работать с огромными числами (654767655465876674576756457568), в отличие от многих других языков программирования.

Float () в python

Хочется немного рассказать про точность вычисления float чисел. Иногда могут происходить такие вещи:
0.1+.0.1+0.1 != 0.3 ( != — не равно)

Почему же такое происходит? За ответом придется идти довольно далеко, ибо это связано с тем, как компьютер хранит и обрабатывает числа. Но если не идти в глубь, то можно сказать, что такого числа в питоне попросту нет.

Это обычная строка, к которой компилятор подбирает максимально близкое число. К примеру по следующим формулам:

1 / 10 ≈ J / (2**N) = 0.1 ; J ≈ 2**N / 10 = 0.1

Вывести число в python

Чтобы вывести в python все, что угодно нужно воспользоваться функцией print. Print(То, что хотите вывести).

Округление до целого числа

В питоне существует много различных библиотек. Одной из который нам придется сейчас воспользоваться, чтобы научиться округлять числа. Чтобы ее подключить, нужно в самом начале файла прописать:

import math

Данный модель содержит в себе очень много различных функций начиная от округления и заканчивая тригонометрией, однако со всем этим можно ознакомиться в официальной документации. Сейчас же рассмотрим только округления.

x = 23.4

round(x) — данная функция округляет числа до ближайшего целого (ответ будет 23). Если же мы передаем, допустим, 1.5, то округление произойдет до ближайшего четного.

Стоит обратить внимания на то, что в стандартном пайтоне уже есть функция round, которая принимает 2 аргумента:

round(x,n) — запись означает следующее: округли мне число х, на n знаков после запятой.
floor(x) — округляет число вниз. (если x = 13.8 выдаст — 13, если х = 4.2 выдаст 4)
ceil(x) — округляет число вверх. (если x = 13.8 выдаст — 14, если х = 4.2 выдаст 5)

Математические операции с числами

Поддерживают все операции (сложение, деление), что и в обычной математике.

x + y — складывает два числа.
x — y — вычитывает два числа.
x * y — умножает два числа.
x / y — делит два числа.
x // y — выдает целую часть после деление.
x % y — выдает остаток от деление.
abs(x) — выдает модуль числа
x ** y возводит x в y степень.

Для возведение в степень можно так же воспользоваться функцией pow(x, y) — где х — цифра, а у — степень. Чтобы извлечь квадратный корень числа, следует воспользоваться уже хорошо знакомой библиотекой math. В ней есть метод, который называет sqrt(x).

Парочка примеров:

>>> 130 + 34
164
>>> 15 * 3
45
>>> 20 / 3
6.666666666666667
>>> 14 // 4
3
>>> 14 % 4
2
>>> 3 ** 3
27
>>> pow(3, 3)
27

Комплексные числа (complex)

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

  • Если мы введем: complex(1, 2) то на выходе получим — (1+2j)
  • Чтобы вывести сопряженное, используется метод x.conjugate()
  • Чтобы вывести мнимую часть — x.imag
  • Чтобы вывести действительную часть — x.real
  • А сравнивать комплексные числа нельзя.

Тест на знание python

А в завершение рекомендуем пройти небольшой тест по теме, чтобы проверить себя, ну и заодно закрепить материал.

Какие числа бывают в питоне?

Какой модуль используется для работы с математическими выражениями?

a) math b) cmth c) muth d)maths

Что выдаст компилятор на такое выражение: 0.05 + 0.20 + 0.15 == 0.1 + 0.1 + 0.1?

a) True b) False

Что выдаст компилятор на такое выражение: sqrt(49) + ads(-3) // 3?

a) Ошибку b) 3.3333333333334 c) 3 d) 1

Что выдаст компилятор на такое выражение: ceil(23.2) + floor(66.8)?

a) 98 b)99 c) 100 d) 101 e) 102

Надеюсь, статья вам оказалась полезной и вы узнали много нового для себя. Но самое главное в программирование — практика. Поэтому вам следует все полученные знания прямо сейчас же по практиковать. Удачи!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *