欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

理解 Python 中的取模运算符

最编程 2024-08-08 16:12:06
...

本文最先发布在:https://www.itcoder.tech/posts/python-modulo-operator/

取模运算符是一个算术运算符,它计算一个数字除以另外一个数字之后,剩下的数字。这个剩下的数字(余数)被称作模数。

例如,5除以3,等于1,模数为2。8除以4,等于2,模数为0。

一、Python 取模操作符

在 Python 中,取模操作符是百分号(%)。语法如下:

num1 % num2

下面是一个例子:

5 % 4

输出:

1

如果被除数是0,那么一个错误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的自然数中,除了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'

双斜杠(//),floor 除法运算符,去除浮点数,保留整数。

三、总结

在这篇文章中,我们向你展示如何使用 Python 的取模操作符。

如果你有任何疑问,请通过以下方式联系我们:

微信:

微信群: 加上面的微信,备注微信群

QQ: 3217680847

QQ 群: 82695646

雪梦科技交流群
雪梦科技交流群