1. 区分整数和浮点数的原因

Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数。

整数和浮点数混合运算的结果则变成了浮点数。

1 + 2.0 # ==> 浮点数 3.0

为什么要区分整数运算和浮点数运算呢?这是因为整数运算的结果永远是精确的,而浮点数运算的结果不一定精确,因为计算机内存再大,也无法精确表示出无限循环小数,比如 0.1 换成二进制表示就是无限循环小数。

那整数的除法运算遇到除不尽的时候,结果难道不是浮点数吗?我们来试一下:

11 / 4 # ==> 2

令很多初学者惊讶的是,Python的整数除法,即使除不尽,结果仍然是整数,余数直接被扔掉。不过,Python提供了一个求余的运算 % 可以计算余数:

11 % 4 # ==> 3

2. 解决涉及整数作精确计算的问题

如果我们要计算 11 / 4 的精确结果,按照“整数和浮点数混合运算的结果是浮点数”的法则,把两个数中的一个变成浮点数再运算就没问题了:

11.0 / 4 # ==> 2.75

所以我们再编程计算时,常常用1.0*来确保结果保留小数

【廖雪峰python入门笔记】整数和浮点数相关推荐

  1. 【廖雪峰python入门笔记】dict

    1. dict 我们已经知道,list和tuple 可以用来表示顺序集合,例如,班里同学的名字: ['Adam', 'Lisa', 'Bart'] 或者考试的成绩列表: [95, 85, 59] 但是 ...

  2. 【廖雪峰python入门笔记】函数

    1. 函数 我们知道圆的面积计算公式为: S = πr² 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = ...

  3. 【廖雪峰python入门笔记】tuple_创建单元素

    tuple和list一样,可以包含 0 个.1个和任意多个元素. 包含多个元素的 tuple,前面我们已经创建过了. 包含 0 个元素的 tuple,也就是空tuple,直接用 ()表示: t = ( ...

  4. 【廖雪峰python入门笔记】Unicode编码_UnicodeDecodeError处理

    1.Unicode编码的由来 字符串还有一个编码问题. 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以, ...

  5. 【廖雪峰python入门笔记】变量

    1. 静态语言和动态语言中的变量表示 静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错.例如Java是静态语言,赋值语句如下: int a = 123; // a是整数类型变量 ...

  6. 【廖雪峰python入门笔记】列表生成式

    1. 生成列表 要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],我们可以用range(1, 11): >>> range(1, 11) [1, 2, ...

  7. 【廖雪峰python入门笔记】迭代

    1. 迭代 在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration). 在Python中,迭代是通过for ...

  8. 【廖雪峰python入门笔记】切片

    1. 对list进行切片 对list进行切片 取一个list的部分元素是非常常见的操作.比如,一个list如下: L = ['Adam', 'Lisa', 'Bart', 'Paul'] 取前3个元素 ...

  9. 【廖雪峰python入门笔记】break和continue

    1. break 用 for 循环或者 while 循环时,如果要在循环体内直接退出循环,可以使用 break 语句. 比如计算1至100的整数和,我们用while来实现: sum = 0 x = 1 ...

最新文章

  1. 数据库Mysql的学习(八)-储存过程和事务和导入导出
  2. JBoss 系列十六:JBoss7/WildFly配置domain模式
  3. 同步方法和同步代码块
  4. Jenkins入门总结
  5. TextView图文混排,显示添加的图片,三种常用方法,亲测
  6. Python中常用的内置函数(不断更新中)
  7. 关于C/C++的trigraphs和Digraphs
  8. j2ee 简单网站搭建:(十)jquery ztree 插件使用入门
  9. [你必须知道的.NET]第二十三回:品味细节,深入.NET的类型构造器
  10. NAT负载均衡_ftp
  11. 能不能翻译PHP网站源码,有朋友可以帮忙用PHP翻译一段PYTHON代码吗?
  12. 最小生成树原理及Kruskal算法的js实现
  13. 接手线上Mysql服务器,我们需要做什么?
  14. 计量经济学(七)----自相关性Autocorrelation.
  15. 6轴并联机器人开发--机械设计
  16. 安卓 文本框怎么贴近边缘_【安卓,iOS】全网最火的充电提示音教程来啦
  17. C#和C++字符串拼接的性能分析
  18. c语言贪吃蛇答辩项目,贪吃蛇项目V1答辩.PDF
  19. JavaScript高级程序设计(第4版)学习随笔【第八章】
  20. 搜狐邮箱怎样开启imap服务器,搜狐企业邮箱iPhone如何设置?

热门文章

  1. [转载]Using ngOptions In AngularJS
  2. 学习-现代交换原理与通信技术
  3. CSS 和 JS 动画哪个更快
  4. cucumber 文件目录结构和执行顺序
  5. 网友:Java岗,自学一个月跳槽计算机视觉,其实入门很简单
  6. 10年Java老兵宝藏资料,吐血奉献!
  7. 身限辞退风波,Google AI 掌门人 Jeff Dean 不误折桂 IEEE 冯诺依曼奖
  8. “刚毕业1年,做Python能挣多少?”网友:吹的不多..
  9. TensorFlow、PyTorch之后,“国产”AI框架还有没有机会?
  10. 数十名工程师作战5天,阿里达摩院连夜研发智能疫情机器人