python2

def div1(x,y):
print "%s/%s = %s" % (x, y, x/y) def div2(x,y):
print "%s//%s = %s" % (x, y, x//y) div1(,)
div1(.,)
div2(,)
div2(.,.)
div2(.,)
div2(,.)

另外,在Python3中上面的代码的输出有何不同(假设代码中的print语句都转化成了Python3中的语法结构)

在Python2中,代码的输出是:

/ =
5.0/ = 2.5
//2 = 2
5.0//2.0 = 2.0
5.0//2 = 2.0
//2.0 = 2.0
[Program finished]

默认情况下,如果两个操作数都是整数,Python2默认执行整数运算。所以,5/2 结果是2,而5./2结果是2.5

注意你可以通过下面的import语句来覆盖Python2中的这一行为

from __future__ import division

还要注意“双斜杠”(//)操作符将会一直执行整除,忽略操作数的类型。这就是为什么5.0//2.0即使在Python2中结果也是2.0

但是在Python3并没有这一行为。两个操作数都是整数时,也不执行整数运算。在Python3中,

def div1(x,y):
print("{}/{}= {}".format(x, y, x/y)) def div2(x,y):
print("{}//{} = {}".format(x, y, x//y)) div1(,)
div1(.,)
div2(,)
div2(.,.)

输出如下:

/= 2.5
5.0/= 2.5
//2 = 2
5.0//2.0 = 2.0
[Program finished]

最新文章

  1. ASP.NET Web API与Rest web api
  2. android里R.layout.的问题
  3. base64和图片的互转(HTML5的File实现)
  4. Ext combox 动态 检索
  5. 靓号正则表达式(前后向查找等) 和 apache正则包使用
  6. 制作与使用静态链接库(.lib)文件
  7. 【Android】手机号码获取问题
  8. PHP socket类
  9. EFDB 基本规范&知识
  10. SnackbarUtilDemo【Snackbar的封装类】
  11. JGUI源码:实现简单进度条(19)
  12. MvcPager帮助文档 — PagerOptions 类
  13. CF1005F
  14. Servlet Analysis
  15. C# Array 基本数据类型数组的基类 传参问题
  16. 协程运行原理猜测: async/await
  17. 有关 WCF 的一些错误处理
  18. Linux内核中namespace之PID namespace
  19. netty5----心跳
  20. lintcode-63-搜索旋转排序数组 II

热门文章

  1. 杭电2577 多数组dp问题
  2. javascript 之 call,apply原理
  3. Visual Web Developer 2012安裝教程
  4. vue组件上动态添加和删除属性
  5. lwm2m协议
  6. 【亲测有效】vs2017无法断点
  7. java引用传递和值传递
  8. for循环的耗时问题
  9. 常见User-Agent大全
  10. Android笔记(八) Android中的布局——相对布局