Python поддерживает несколько числовых типов данных, которые используются для различных математических операций в программировании. К этим типам данных относятся целые числа, числа с плавающей точкой и комплексные числа. Понимание этих типов данных и их характеристик является важным для любого программиста, который хочет работать с числовыми данными в Python.
Типы Чисел в Python
В Python существует несколько типов чисел, которые могут использоваться для различных целей. Самые распространенные типы чисел в Python:
-
Целое число (int): Это целое число без десятичной точки. Например,
1
,2
,3
и т. д. являются целыми числами. -
Число с плавающей точкой (float): Это десятичное число. Например,
1.2
,3.14159
и т. д. являются числами с плавающей точкой. -
Комплексное число (complex): Это число с действительной и мнимой частями. Например,
1 + 2j
,3.14 - 4j
и т. д. являются комплексными числами.
Вот несколько примеров того, как определить эти типы чисел в Python:
# Integer
x = 5
print(type(x)) # Output: <class 'int'>
# Float
y = 3.14
print(type(y)) # Output: <class 'float'>
# Complex
z = 2 + 3j
print(type(z)) # Output: <class 'complex'>
Функция isinstance()
Чтобы проверить, является ли переменная числом в Python, вы можете использовать функцию isinstance()
для проверки, принадлежит ли переменная к типу данных int, float или complex. Вот пример:
x = 10
y = 3.14
z = 2 + 3j
print(isinstance(x, (int, float, complex))) # Output: True
print(isinstance(y, (int, float, complex))) # Output: True
print(isinstance(z, (int, float, complex))) # Output: True
print(isinstance('hello', (int, float, complex))) # Output: False
Округление Числа в Python
Вы можете округлить число, используя встроенную функцию round()
. Функция round()
принимает два аргумента: число, которое нужно округлить, и количество десятичных знаков, до которых нужно округлить.
Вот пример:
x = 3.14159
rounded_x = round(x, 2)
print(rounded_x) # Output: 3.14
Обратите внимание, что если число, которое нужно округлить, заканчивается на 5, функция round()
будет округлять до ближайшего четного числа. Это известно как "банковское округление". Например:
x = 2.5
rounded_x = round(x)
print(rounded_x) # Output: 2
Форматирование Чисел
В Python есть несколько способов форматирования чисел. Вот несколько примеров:
Использование Встроенной Функции format()
x = 3.14159
print("{:.2f}".format(x)) # Output: 3.14
Строка "{:.2f}"
внутри функции format()
указывает Python на форматирование числа как числа с плавающей точкой с двумя десятичными знаками.
Использование f-строк (Python 3.6 и выше)
x = 3.14159
print(f"{x:.2f}") # Output: 3.14
Буква f
перед строкой указывает, что это f-строка, а "{x:.2f}"
внутри строки сообщает Python оформатировать значение x
как число с плавающей точкой с двумя десятичными знаками.
Использование Оператора %
x = 3.14159
print("%.2f" % x) # Output: 3.14
Строка %.2f
внутри оператора %
указывает Python на форматирование числа как числа с плавающей точкой с двумя десятичными знаками.
Проверка, Является ли Строка Числом
Вы можете проверить, является ли строка числом в Python, используя различные методы. Вот несколько примеров:
Использование Метода isnumeric()
my_string = "123"
if my_string.isnumeric():
print("String is a number")
else:
print("String is not a number") # Output: String is a number
Using isdigit()
method
my_string = "456"
if my_string.isdigit():
print("String is a number")
else:
print("String is not a number") # Output: String is a number
Использование Блока try-except для Преобразования Строки в Число с Плавающей Точкой
my_string = "789.12"
try:
float(my_string)
print("String is a number")
except ValueError:
print("String is not a number") # Output: String is a number
Строка %.2f
внутри оператора %
указывает Python на форматирование числа как числа с плавающей точкой с двумя десятичными знаками.
Проверка, Является ли Строка Числом
Вы можете проверить, является ли строка числом в Python, используя различные методы. Вот несколько примеров:
Использование Метода isnumeric()
num = 5.0 # the number you want to check
if num % 1 == 0:
print("The number is whole.")
else:
print("The number is not whole.") # Output: "The number is whole.
"
Генерация случайного числа
Чтобы получить случайное число в Python, вы можете использовать модуль random. Вот пример того, как сгенерировать случайное целое число между 0 и 10:
import random
random_number = random.randint(0, 10)
print(random_number)
Это выведет случайное целое число от 0 до 10 (включительно) каждый раз при запуске скрипта. Если вы хотите сгенерировать случайное число с плавающей точкой, вы можете использовать функцию random.uniform()
вместо этого:
import random
random_number = random.uniform(0, 1)
print(random_number)
Возведение числа в квадрат в Python
Давайте посмотрим, как возвести число в квадрат в Python.
Первый метод - использование оператора степени **
. Вот пример:
x = 5
squared = x ** 2
print(squared) # Output: 25
В качестве альтернативы, вы также можете использовать функцию pow()
для вычисления квадрата числа. Вот пример:
x = 5
squared = pow(x, 2)
print(squared)
Отрицание Числа
Вы можете изменить знак числа, используя оператор -
(минус).
Вот пример:
number = 10
negated_number = -number
print(negated_number) # Output: -10
Простое число
Простое число - это положительное целое число, большее 1, которое не имеет положительных целых делителей, кроме 1 и самого себя. В Python вы можете проверить, является ли число простым, проверив, делится ли оно на любое число, кроме 1 и самого себя.
Вот пример функции, которая проверяет, является ли число простым или нет:
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
Эта функция принимает положительное целое число n
на входе и возвращает True
, если n
является простым, и False
в противном случае.
Функция сначала проверяет, является ли n
меньше или равным 1, что по определению не является простым числом. Если n
меньше или равен 1, функция возвращает False
.
Если n
больше 1, функция проверяет, делится ли оно на любое число от 2 до квадратного корня из n
. Если n
делится на любое число в этом диапазоне, оно не является простым, и функция возвращает False
. В противном случае n
простое, и функция возвращает True
.
Вот пример того, как использовать функцию is_prime
:
print(is_prime(7)) # True
print(is_prime(15)) # False
print(is_prime(23)) # True
print(is_prime(1)) # False
Вывод:
True
False
True
False
В этом примере мы вызвали функцию is_prime
с различными входными значениями и вывели результат.
Число Эйлера в Python
Число Эйлера, также известное как математическая константа e
, является математической константой, которая приблизительно равна 2,71828. В Python вы можете вычислить число Эйлера с помощью модуля math
.
Вот пример того, как вычислить число Эйлера:
import math
e = math.e
print(e) # Output: 2.718281828459045
Извлечение Числа из Строки
Чтобы извлечь число из строки в Python, вы можете использовать регулярные выражения с модулем re
. Вот пример:
import re
string = "The price is $12.34"
number = re.findall(r'\d+\.\d+', string)[0]
print(number) # Output: 12.34
В этом примере мы сначала импортировали модуль re
, который обеспечивает поддержку регулярных выражений. Затем мы определили переменную string
, которая содержит предложение с числом.
Для извлечения числа из строки мы использовали функцию re.findall
с шаблоном регулярного выражения \d+\.\d+
. Этот шаблон соответствует одной или более цифрам \d+
, за которыми следует точка \.
и одна или более цифр \d+
. Полученное совпадение представляет собой строку, которая представляет число в предложении.
Поскольку re.findall
возвращает список совпадений, мы получаем доступ к первому элементу [0]
списка, чтобы получить число в виде строки.
Если вам нужно преобразовать извлеченное число из строки в числовое значение, вы можете использовать функцию float или int:
number = float(number)
print(number) # Output: 12.34
Цифры Числа
Чтобы найти цифры числа в Python, вы можете преобразовать число в строку, а затем перебирать строку, чтобы извлечь каждую цифру. Вот пример:
num = 12345
# Convert number to string
num_str = str(num)
# Iterate over string and print each digit
for digit in num_str:
print(digit)
Пишите вместе с нами!
Вы можете внести свой вклад в статьи о Python на GitHub: создайте Fork, внесите правки и отправьте нам Pull request.