前言:Python中的默认整除所采用的是向下取整(round down),这也就导致了在处理负数的整除时会存在一些问题。而取余操作就是建立在整除的基础上的,从而导致这两种计算均存在问题。


整除

默认向下(小)取整

>>> 10//3
3
# 这也就导致了在负数的整除过程中出现问题
>>> 10//-3
-4
# 这是因为真正的结果-3.3333在向下(小)取整时,变成了-4

取余

取余的实现是建立在整除的基础上的

x % y = x − ( ( x / / y ) ∗ y ) x \% y = x-((x//y)*y) x%y=x−((x//y)∗y)

这个公式自己稍微想一下不难得出。但是由于//整除本就在处理负数时存在问题,所以在复数的取余同样存在问题。

>>> 10%3
1
>>> 10%-3
-2
## 这里的-2是因为10//-3=-4,从而10-12=-2

Python中整除(//)和取余(%)问题相关推荐

  1. 【关于python中整除与取余】

    ##关于python中整除与取余 1. 整除(//) 整除的百度百科 在我看来,整除其实就是算除法的时候,除出来的商. n=189 c=n//100 #百位数 print(c) 1 2. 取余(%) ...

  2. Python负数整除和取余

    Python正数的整除 // 以及取余 % 与C++等语言相同,但当除数与被除数有一个是负数时就返回的结果有所区别 首先是整除,C++中是向0取整的, 而在Python中,整除的结果都是向下取整的,相 ...

  3. Python中的负数取余问题

    12 % 5, -12 % 5 # output # (2, 3) 在数学里,"负数取余"遵循的是: 如果 a 与 d 是整数,d 非零,那么余数 r 满足 a = q * d + ...

  4. Python负数的整除和取余

    Python语法对于负数的整除和取余与其他语法不同,在LeetCode刷题中经常会与答案不符,具体如下: 在负数整除中,永远是小于当前小数的最大整数,如下: 7 / -2 = -3.5,7//-2 = ...

  5. 计算机中负数除法取余问题分析与实现

    计算机中负数除法取余问题分析与实现 背景 问题说明 原理分析 参考资料 背景 项目中遇到一个奇怪的问题,定位bug半天,发现同样的负数取余操作,在不同编程语言中实现竟然不一致,我滴个天,惊呆了.于是, ...

  6. php中余数为0,PHP中余数、取余的妙用

    转自:http://www.jb51.net/article/68567.htm 这篇文章主要介绍了PHP中余数.取余的妙用,这个是在WEB开发中一个经常使用的小技巧,不管是在表格.ul.li或者是换 ...

  7. C语言整除、取余运算的符号问题

    偶然的机会看到这样一个问题2/(-2)的值是多少 ?回顾以往编程经历,只写过正整数整除.取余.整除和取余的操作如下: 1.a = m/n; 2.b = m%n; 这里a,b,m,n满足的关系:a*n ...

  8. 海伦公式用计算机语言怎么写,python中海伦公式求取三角形面积的示例

    python中海伦公式求取三角形面积的示例 发布时间:2020-12-07 10:01:44 来源:亿速云 阅读:143 作者:小新 这篇文章将为大家详细讲解有关python中海伦公式求取三角形面积的 ...

  9. python中除法(/)、取模(%)、取整除(//)、幂(**)运算

    文章目录 除法("/") 运算 取模("%")运算 取整除("//")运算 幂运算 除法("/") 运算 #除法运算 i ...

最新文章

  1. 微信支付提示 缺少$key0$错误
  2. CoreLocation+MapKit系统定位(含坐标以及详细地址)
  3. 前端代码标准最佳实践:javascript篇
  4. Linux环境下安装Redis
  5. 【CUDA开发】CUDA面内存拷贝用法总结
  6. 一种同于计算机键盘的测试装置,一种计算机键盘按键测试装置
  7. python gridsearch_python gridsearch中的内存错误
  8. 服务器即将维护完成,新一轮大服务器即将开启:3月26日维护8小时
  9. 2120: 数颜色(带修莫队)
  10. 小车启动预热是原地预热,还是慢慢开动预热,哪种方式比较好?
  11. Required field ‘client_protocol‘ is unset!
  12. 图解Transformer(完整版)
  13. Beego项目打包部署到Linux服务器
  14. COCO数据集之gt_overlaps之分析
  15. pyQt怎样设置窗口标题、图标
  16. eclipse设置xml文件默认的打开方式为XML Editor
  17. PaddlePaddle课程学习第一周笔记
  18. Telnet - 访问8080端口并发送数据
  19. 完美卸载SQL Server 2008 R2 的方法,适合所有问题
  20. ruby游戏框架:gosu与chingu(一)

热门文章

  1. Example 类的作用
  2. Session 与SessionFactory
  3. HTTP和RTSP简介
  4. 用浏览器收藏夹的书签保存javascript的简单脚本
  5. Qt数据库:(三)利用QSqlQuery类执行SQL语句(一)
  6. 【Spring Boot JPA】ManyToOne OneToMany学习笔记
  7. 空间分辨率、频谱分辨率、辐射计量分辨率、时间分辨率。
  8. [Android UI] graphics
  9. 逻辑与() 逻辑或(||)
  10. 关于DCDC选型OVP的经验