6 эффективных способов вычислить квадрат числа в Python
Квадрат числа — это результат умножения числа самого на себя. В Python есть несколько способов это сделать: от простой арифметики до специализированных библиотек.
Способ 1: Функция pow()
Встроенная функция pow(base, exp) возводит в степень. Для квадрата экспонента = 2.
base = int(input("Введите число: "))
result = pow(base, 2)
print(f"Квадрат: {result}")
Также есть math.pow(), но она возвращает float.
Способ 2: Оператор степени **
Оператор ** — стандартный способ возведения в степень.
base = int(input("Введите число: "))
result = base ** 2
print(f"Квадрат: {result}")
Работает с целыми, float, complex.
Способ 3: Простое умножение
Самый понятный и быстрый для целых чисел.
base = int(input("Введите число: "))
result = base * base
print(f"Квадрат: {result}")
Способ 4: Списки и генераторы (для нескольких чисел)
Квадраты для списка чисел:
numbers = [2, 4, 6, 8] squares = [n ** 2 for n in numbers] # генератор списка print(squares) # [4, 16, 36, 64]
Или через map:
squares = list(map(lambda x: x**2, numbers))
Способ 5: Цикл while
Для последовательных чисел от 1 до N:
n = 1
while n <= 5:
print(f"{n}^2 = {n**2}")
n += 1
Способ 6: Библиотека NumPy (для массивов и науки о данных)
Эффективно для больших массивов и векторных операций.
import numpy as np arr = np.array([2, 4, 6, 8]) squares = np.square(arr) # или arr ** 2 print(squares) # [ 4 16 36 64]
Сравнение методов
| Метод | Сценарий использования | Возвращает |
|---|---|---|
x * x | Одиночное число, максимальная скорость | int/float |
x ** 2 | Одиночное число, общий случай | int/float/complex |
pow(x, 2) | Когда нужна третья операция (mod) | int/float |
| List comprehension | Список чисел | list |
np.square() | Массивы NumPy, научные вычисления | ndarray |
Важное примечание
Квадрат числа (x²) и квадратный корень (√x) — разные операции. Для корня используйте math.sqrt(x), x ** 0.5 или np.sqrt(x).
Заключение
- Для одного числа:
x * xилиx ** 2. - Для списков: генераторы списков.
- Для научных вычислений и больших данных: NumPy.
- Всегда проверяйте ввод пользователя (
isdigit(),try/except).
Python
- Автоматизация входа в Facebook с Python и Selenium: пошаговое руководство
- Оператор pass в Python: практическое руководство
- Пакеты в Python: структура, импорт и лучшие практики
- Словари Python: добавление, обновление и управление парами ключ/значение
- Отправка email в Python через SMTP: простое и быстрое руководство
- Функция abs() в Python: вычисление абсолютных значений для чисел и комплексных чисел
- Операторы в Python: Арифметические, сравнения, логические и битовые
- Переменные, константы и литералы в Python — подробное руководство
- Сетевое программирование в Python: сокеты и продвинутые протоколы
- Освоение yield в Python: генератор против return — практическое руководство