Python Glossary English

Python 3.5+mathпонятие

math.gcd

комбинаторика

Возвращает наибольший общий делитель двух или более целых чисел. math.gcd(48, 36) → 12. Python 3.9+: несколько аргументов.

Синтаксис

math.gcd(*integers)

Результат всегда неотрицательный, знаки аргументов роли не играют, НОД нуля и x равен модулю x, а вызов вообще без аргументов даёт 0. Именно поэтому ноль удобен как стартовое значение при свёртке списка через functools.reduce — спецслучаев не нужно. До Python 3.9 функция принимала ровно два аргумента, так что многоаргументный вызов на старом интерпретаторе упадёт.

Примеры

# Python 3.9+
import math
print(math.gcd(12, 8))    # → 4
print(math.gcd(100, 75))  # → 25
print(math.gcd(0, 5))     # → 5
print(math.gcd(7, 13))    # → 1 (взаимно просты)
print(math.gcd(12, 18, 24))  # → 6 (Python 3.9+)
print(math.gcd(48, 64))   # → 16

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности