Добавить в корзинуПозвонить
Найти в Дзене
Анастасия Софт

🧮 Числа в Python: от простого к мощному

Python — один из самых гибких языков, когда дело касается работы с числами. Он одинаково удобен для решения школьных задач, финансовых расчётов и научных вычислений. В этой статье мы разберём типы чисел, базовые операции, а затем перейдём к интересным трюкам, включая работу с бесконечностью, числами Фибоначчи, рациональными и комплексными числами, фракталы, и даже немного машинного обучения. В Python есть три основных числовых типа: int - целое число. Например: 42
float - число с точкой. Например: 3.14
complex - комплексное число. Например: 2 + 3j a = 10 # int
b = 3.5 # float
c = 2 + 4j # complex
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'complex'> print(7 + 3) # 10
print(7 - 3) # 4
print(7 * 3) # 21
print(7 / 3) # 2.333...
print(7 // 3) # 2 (целая часть)
print(7 % 3) # 1 (остаток)
print(2 ** 3) # 8 (возведение в степень) import math
print(math.inf > 10**1000) # True
print(-math.inf < -10*
Оглавление

Python — один из самых гибких языков, когда дело касается работы с числами. Он одинаково удобен для решения школьных задач, финансовых расчётов и научных вычислений. В этой статье мы разберём типы чисел, базовые операции, а затем перейдём к интересным трюкам, включая работу с бесконечностью, числами Фибоначчи, рациональными и комплексными числами, фракталы, и даже немного машинного обучения.

🐣 Базовые числовые типы в Python

В Python есть три основных числовых типа:

int - целое число. Например: 42
float - число с точкой. Например: 3.14
complex - комплексное число. Например: 2 + 3j

Примеры:

a = 10 # int
b = 3.5 # float
c = 2 + 4j # complex

print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'complex'>

🔢 Базовые арифметические операции

print(7 + 3) # 10
print(7 - 3) # 4
print(7 * 3) # 21
print(7 / 3) # 2.333...
print(7 // 3) # 2 (целая часть)
print(7 % 3) # 1 (остаток)
print(2 ** 3) # 8 (возведение в степень)

🧮 Интересные вещи с числами

📌 Работа с бесконечностью

import math

print(math.inf > 10**1000) # True
print(-math.inf < -10**1000) # True

Можно использовать math.isinf() или math.isnan() для проверки бесконечности и NaN.

📊 Использование decimal для высокой точности

from decimal import Decimal, getcontext

getcontext().prec = 50
a = Decimal(1) / Decimal(7)
print(a)

Полезно в финансовых расчётах, когда нужна высокая точность.

🧠 Продвинутый пример: генератор чисел Фибоначчи

def fib(limit):
a, b = 0, 1
while a < limit:
yield a
a, b = b, a + b

for num in fib(1000):
print(num, end=' ')

Генераторы позволяют работать эффективно даже с большими последовательностями.

🧮 Математика высокого уровня

📐 Модуль fractions: работа с рациональными числами

from fractions import Fraction

f = Fraction(3, 4) + Fraction(2, 3)
print(f) # 17/12

🧊 Комплексные числа и модуль cmath

import cmath

z = complex(1, 2)
print(cmath.polar(z)) # (модуль, аргумент)
print(cmath.exp(z)) # экспонента комплексного числа

🌌 Построение фрактала Мандельброта

import matplotlib.pyplot as plt
import numpy as np

def mandelbrot(c, max_iter):
z = 0
for n in range(max_iter):
if abs(z) > 2:
return n
z = z*z + c
return max_iter

# Параметры изображения
width, height = 800, 800
image = np.zeros((height, width))

for x in range(width):
for y in range(height):
zx = x * (3.5 / width) - 2.5
zy = y * (3.5 / height) - 1.75
c = complex(zx, zy)
image[y, x] = mandelbrot(c, 100)

plt.imshow(image, cmap='hot')
plt.axis('off')
plt.show()

Фракталы — это потрясающий способ изучать комплексные числа и визуализацию.

🤖 Бонус: Использование чисел в машинном обучении

from sklearn.linear_model import LinearRegression
import numpy as np

# Простая линейная регрессия
x = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 6, 8, 10])

model = LinearRegression()
model.fit(x, y)

print(model.predict([[6]])) # [12.]

✨ Заключение

Числа в Python — это не просто арифметика. Это целый мир, включающий в себя:

  • точные вычисления с decimal и fractions
  • работу с бесконечностью
  • генераторы чисел
  • фракталы и визуализацию
  • сложные структуры, как комплексные числа
  • и даже машинное обучение!

Если вы только начинаете — пробуйте базовые операции. Если вы уверенно себя чувствуете — пробуйте писать собственные генераторы, рисуйте фракталы или стройте модели. В Python числа действительно умеют многое!

Уроки Python для новичков. Числа в Python: от простого к мощному.
Уроки Python для новичков. Числа в Python: от простого к мощному.