当前位置: 首页 > 编程笔记 >

基于python 取余问题(%)详解

支智志
2023-03-14
本文向大家介绍基于python 取余问题(%)详解,包括了基于python 取余问题(%)详解的使用技巧和注意事项,需要的朋友参考一下

取余的公式:

余数=除数-被除数*商

python的的余数是按照整除(向下取整)得到的商来计算的。

取余问题主要分为 :

正数与正数,负数与负数,正数与负数 ,0

正数与正数

#大数/小数:因为得出的商和整除得出的一致,所以直接按照这个公式(余数=除数-被除数*商)即可。
print(9//7) #1
print(9%7)  #2

#小数/大数:因为得出的商和整除得出的一致,所以直接按照这个公式(余数=除数-被除数*商)即可。
#这里也可以说:只要正数与正数是小数/大数 的,商都是0 ,所以余数是他本身。
print(7//9) #0
print(7%9) #7

负数与负数

#小数/大数:因为得出的商和整除得出的一致,所以直接按照这个公式(余数=除数-被除数*商)即可。
#因为负负得正,所以整除得出的就是 9//7的值为1,所以余数为 -9-(-7)=-2
print(-9//-7) #1
print(-9%-7)  #-2

#大数/小数:因为得出的商和整除得出的一致,所以直接按照这个公式(余数=除数-被除数*商)即可。
#这里也可以说:只要在负数与负数相除中是大数/小数 的,商都是0 ,所以余数是他本身。
print(-7//-9) #0
print(-7%-9) #-7

0

#由于0不能做被除数,所以无论0除以任何数(0除外)的商和余数都为0。

print(0%-1) #0
print(0%1)  #0

正数与负数

#负数/正数
#-7/9=-0.77.. 所以整除的值为-1,也就是向下取整的值,而python中取余是按照整除的商计算的,所以余数为 -7-(9*(-1))=2
print(-7//9)  #-1 
print(-7%9)  #2
#同样的 -9/7=-1.285.. 所以整除的值为-2,余数 -9-7*(-2)=5
print(-9//7)  #-2
print(-9%7)  #5

#正数/负数
#同样的 7/-9=--0.77.. 所以整除的值为-1,余数 7-【-9*(-1)】=-2
print(7//-9)  #-1
print(7%-9)  #-2

#同样的 9/-7=-1.285.. 所以整除的值为-2,余数 9-【-7*(-2)】=-5
print(9//-7)  #-2
print(9%-7)  #-5

补充知识:python切片及负数下标

[a:b:c] 表示 [a,b) 区间内逐级递增 c 的数集

例如: 列表: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 ]

[1:18:3] 表示的就是 1 ~ 17 中的数字从 1 开始逐个递增 3 的数的集合 [ 1, 4, 7, 10, 13, 16 ]

负数下标篇

列表 (长度为10)
普通下标 0 1 2 3 4 5 6 7 8 9
负数下标 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1

以上这篇基于python 取余问题(%)详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Python中关于Sequence切片的下标问题详解,包括了Python中关于Sequence切片的下标问题详解的使用技巧和注意事项,需要的朋友参考一下 前言 在python中, 切片是一个经常会使用到的语法, 不管是元组, 列表还是字符串, 一般语法就是: sequence[ilow:ihigh:step] # ihigh,step 可为空; 为了简短易懂, 暂时排除step的用法

  • 本文向大家介绍详解Python爬虫爬取博客园问题列表所有的问题,包括了详解Python爬虫爬取博客园问题列表所有的问题的使用技巧和注意事项,需要的朋友参考一下 一.准备工作 首先,本文使用的技术为 python+requests+bs4,没有了解过可以先去了解一下。 我们的需求是将博客园问题列表中的所有问题的题目爬取下来。   二.分析: 首先博客园问题列表页面右键点击检查 通过Element查找

  • 本文向大家介绍基于python的字节编译详解,包括了基于python的字节编译详解的使用技巧和注意事项,需要的朋友参考一下 定义: 把模块定义成二进制语言程序的这个过程叫做字节编译 python是解释型语言,它的字节编译是由解释器完成的 编译py文件,生成pyc结尾的文件的方法, 方法一: Import zipfile.py 方法二: 以上这篇基于python的字节编译详解就是小编分享给大家的全部

  • 本文向大家介绍关于探究python中sys.argv时遇到的问题详解,包括了关于探究python中sys.argv时遇到的问题详解的使用技巧和注意事项,需要的朋友参考一下 自动化任务 这是一篇关于我在自己学习python自动化办公中遇到的问题的笔记。 关于文章读写 我用到的书是《python编程快速上手》,在学习第八章时遇到了理解上的困难。问题主要是在接触sys.argv和在创建bat文件时,出现

  • 本文向大家介绍关于Python如何避免循环导入问题详解,包括了关于Python如何避免循环导入问题详解的使用技巧和注意事项,需要的朋友参考一下 前言 Python 中使用package时,出现循环导入问题十分常见,我们创建如下package来说明这个问题: 其中, __init__.py 将pkg指定为一个Python package module_a.py中定义了一个action_a()函数,该

  • 本文向大家介绍Python基于贪心算法解决背包问题示例,包括了Python基于贪心算法解决背包问题示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python基于贪心算法解决背包问题。分享给大家供大家参考,具体如下: 贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。 贪心算法不是对所有