所谓取模运算,就是计算两个数相除之后的余数,符号是%。如a % b就是计算a除以b的余数。用数学语言来描述,就是如果存在整数n和m,其中0 <= m < b,使得a = n * b + m,那么a % b = a - n * b = m.

取模运算的两个操作数都必须是整数,可以是负整数,但是b不可以是0,因为被除数不能为0嘛。

当a和b中存在负整数时,首先计算|a|%|b|=c,然后a%b的符号与b一致。也就是说,如果b>0,则a%b=c;如果b<0,则a%b=-c

比如:

好了,上面是以前我对取模运算的认识,我记得<>上也是这么写的。但是,在Python中,我随便输入了一个浮点数进行取模运算,竟然也是可以的,惊呆了==

不过呢,仔细观察就会发现,不知道它是怎么计算的啊!怎么办呢,我们首先来看看,浮点数的取模在数学上要怎么定义呢?

浮点数取模的数学定义:对于两个浮点数a和b,a % b = a - n * b,其中n为不超过a / b的最大整数。

例如,

3.5 / 2 = 1.75,取n = 1,则3.5 % 2 = 3.5 - 1 * 2 = 1.5

-3.5 / 2 = -1.75,取n = -2,则-3.5 % 2 = -3.5 - (-2) * 2 = 0.5

3.5 / -2.5 = -1.4,取n = -2,则3.5 % -2.5 = 3.5 - (-2) * (-2.5) = -1.5

另外,C++中有一个函数fmod可以用来计算浮点数的取模。

总结:

取模运算的两个操作数a和b可以是整数,也可以是浮点数;可以是正数,零(b不能为0),也可以是负数。不管是整数还是浮点数,是正数还是负数还是零,只需要抓住取模的数学定义即可。统一的数学定义如下:

对于两个数a和b(b不为0),a % b = a - n * b,其中n为不超过a / b的最大整数(这里的除就是正常的除,不是整除)。

需要注意的是,整数的取模运算的定义和浮点数的是一样的,所以计算方法也是一样的。最前面提供的整数取模的方法,其实本质上跟浮点数取模的方法是一致的,只不过这种方法可能在含有负整数的整数取模中比较方便而已。

以上这篇Python中的取模运算方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: Python中的取模运算方法

本文地址: http://www.cppcns.com/jiaoben/python/244170.html

python取模运算_Python中的取模运算方法相关推荐

  1. python中的模运算符_Python中的字符串模运算符与format函数

    如果你在网上搜索Python中如何进行字符串插值(string interpolation),那么你很可能会发现一些留言和旧文档中说字符串模运算符(%)以后会被废弃,并移除出标准库.但是这完全是杞人忧 ...

  2. python反爬虫破解_python中绕过反爬虫的方法总结

    我们在登山的途中,有不同的路线可以到达终点.因为选择的路线不同,上山的难度也有区别.就像最近几天教大家获取数据的时候,断断续续的讲过header.地址ip等一些的方法.具体的爬取方法相信大家已经掌握住 ...

  3. python安装django模块_python中安装django模块的方法

    网上搜一下对应的版本号,版本号相对应. 安装django有两种方式: 1.pip安装 pip install django 这个方法我用的时候已经报错.貌似访问被阻挡.我一般都用第二种 2.下载压缩包 ...

  4. python如何使用三角函数_Python中计算三角函数之cos()方法的使用简介

    Python中计算三角函数之cos()方法的使用简介 这篇文章主要介绍了Python中计算三角函数之cos()方法的使用简介,是Python入门的基础知识,需要的朋友可以参考下 cos()方法返回x弧 ...

  5. python的float函数_Python中实现float() 函数的方法

    Python中实现float() 函数的方法 发布时间:2020-12-15 09:29:53 来源:亿速云 阅读:75 作者:小新 这篇文章将为大家详细讲解有关Python中实现float() 函数 ...

  6. python取整符号_Python中的取整函数

    import math # 向上取整 print("math.ceil---") print("math.ceil(2.3) => ", math.cei ...

  7. python布尔类型运算_Python中与或非运算(布尔运算)

    就像可以用算术运算符(+.−.*./ 等)把数字组合起来一样,我们也可以用布尔运算符把布尔值组合起来.Python 中的 3 个主要布尔运算符是 and.or 和 not.当用布尔运算符组合两个或多个 ...

  8. python怎么输入分数_python中进行分数(fraction)运算

    分数运算 分数是python中的一个模块(module).模块是由别人写的,并且可以被拿来直接使用的代码程序,包括类.函数以及标签的定义,是python标准函数库的一部分.使用是必须先插入模块. &g ...

  9. python设置http代理_python中设置HTTP代理的方法

    什么是HTTP代理 HTTP代理本质上是一个Web应用,它和其他普通Web应用没有根本区别.HTTP代理收到请求后,根据Header中Host字段的主机名和Get/POST请求地址综合判断目标主机,建 ...

最新文章

  1. Redis系列五:redis键管理和redis数据库管理
  2. Linux / argv、environ 和 env 的联系
  3. VTK:PolyData之WarpSurface
  4. Python装饰器(二)
  5. 域控服务器取消验证_记一次域控服务器应急
  6. windows文件读取 xxe_java xxe漏洞
  7. 织梦CMS被挂马特征汇总
  8. CString、string、char*的综合比较
  9. HDU 4455 Substrings(线性dp,很有意思)
  10. html中ul和li是什么单位,html中ul,ol和li的区别
  11. Airtest  入门
  12. EasyExcel实现Mysql数据库Excel数据导出
  13. AgentWeb使用
  14. #730 (Div. 2) A 思维 C dfs D1 交互思维
  15. GameObject在SetActive(false)隐藏后,其下脚本仍会运行
  16. 点云数据在Matlab生成格网数据-2021-10-18
  17. 程苓峰:百度兵陷日本 市场份额跌至1%
  18. maya中arnord渲染器渲染不连续单帧的方法
  19. 一文看懂队列(FIFO)
  20. R语言 PCA 主成分分析

热门文章

  1. Git学习笔记(黑马)
  2. GRRU数字光纤直放站
  3. 青少年为什么学python_为什么青少年一定要学Python?
  4. 服务器的标准pcb型号,服务器电源的标准
  5. 李笑来:区块链技术终将改变世界。长期乐观,短期保守。
  6. Androd手机适配
  7. 服务器安装centos系统报错/dev/root/does not exist
  8. 1天玩遍颐和园和少林寺
  9. Python Virtualenv 虚拟环境
  10. 【论文】word中三线表的快速简单制作