ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Оператор Modulo в Python

Оператор Modulo в Python

Операция по модулю – это арифметическая операция, которая находит остаток от деления одного числа на другое. Остаток называется модулем операции.

Например, 5 деленное на 3, равно 1, с остатком 2, а 8, деленное на 4, равно 2, с остатком 0.

 

Оператор Modulo в Python

В Python оператор Modulo представлен знаком процента ( %). Синтаксис выглядит следующим образом:

num1 % num2

Вот пример:

5 % 4
1

 

Если делитель (второй аргумент) равен нулю, то возбуждается ошибка ZeroDivisionError:

5 % 0
ZeroDivisionError: integer division or modulo by zero

 

Оператор по модулю также принимает плавающие числа в качестве аргументов:

6.8 % 3.4
0.0

 

При форматировании строк символ % представляет оператор интерполяции.

 

Примеры

Одним из распространенных случаев использования оператора по модулю является проверка, является ли число нечетным или четным. Если число, деленное на 2, не имеет остатка, то это четное число. В противном случае, если он оставляет остаток от 1, то число нечетное:

num = 11

if (num % 2) == 0:
   print(num, "is even")
else:
   print(num, "is odd")

 

Если вы запустите приведенный выше код, 11 % 2 оставьте остаток 1 и код внутри оператора else будет выполнен:

11 is odd

 

Вот еще один пример, показывающий, как проверить, является ли число простым числом, используя оператор по модулю. Простое число – это положительное целое число, которое может быть разделено без остатка только на одно и на 1:

def isPrimeNumber(num):
  if num < 1:
    return False
  for i in range(2, num):
    if (num % i) == 0:
      return False
  else:
    return True

 

Сначала мы проверяем num, является ли число положительным числом. Затем мы проверяем, делится ли число на другое число в диапазоне от 2 или num без напоминания. Если ни одно из условий не выполнено, число простое.

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

def secondsToMinutes(sec):
  seconds = sec // 60
  minutes = sec % 60
  return "%d minutes and %d seconds" % (minutes, seconds)

secondsToMinutes(657)
'57 minutes and 10 seconds'

 

Оператор деления на две косые черты (//) округляет результат до ближайшего целого числа.

 

Вывод

В этой статье мы показали, как использовать оператор Python по модулю.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Exit mobile version