Python2和Python3的差异

1.最初级的是:print 输出格式的不同
  • Python2中print带括号或者不带括号都可以,当Python2的print带括号时,如果有参数,会连同括号一起输出来,
  • Python3的print必须带括号

Python2:

>>> import platform
>>> platform.python_version()
'2.7.12'
>>> print "Hello, world"
Hello, world
>>> print("Hello, you")
Hello, you
>>> x = 345
>>> print "x:", x
x: 345
>>> print("x:", x)
('x:', 345)

Python3:

>>> import platform
>>> platform.python_version()
'3.5.2'
>>> print "hello, you"
  File "<stdin>", line 1
    print "hello, you"
                     ^
SyntaxError: Missing parentheses in call to 'print'
>>> print("hello, you")
hello, you
>>> x = 258
>>> print("x=", x)
x= 258
2.整除

Python中的除法有两个运算符:/ 和 //

  • /
    • Python2中/的除法和Java、C差不多,整数相除的结果为整数,小数部分会忽略掉,浮点数相除的结果为浮点数。
    • Python3中/的除法,对于整数相除的结果也是浮点数

Python2

>>> 6/3
2
>>> 6.0/3
2.0
>>> 1/2
0

Python3:

>>> 1/2
0.5
>>> 6.0/3
2.0
>>> 6/3
2.0
  • //:叫做floor除法,从Python2.2开始,增加了一个操作符 // ,//除法不管操作数为何种数值类型,总是会舍去小数部分,返回数字序列中比真正的商小的最接近的数字。(Python2和Python3无差异)

Python2:

>>> 1//2
0
>>> 1.0//2
0.0
>>> -1//2
-1

Python3:

>>> 1//2
0
>>> 1.0//2
0.0
>>> -1 // 2
-1

3.xrange
  • Python2:在Python2中有range和xrange之分,range(a, b, step)是cong a到b-1,以step为步长,产生一个list。但是当返回的list中数字太多的话,占用很多内存,而且我们一般是在循环时使用该list中的数字,一般每个数字只使用1次。而xrange()解决了这个问题,xrange的功能和range一样,但是返回的不在是一个list,而是一个类型为‘xrange’的东西,这个东西和生成器很像,但是它不是生成器。
  • Python3:Python3中摒弃了range()函数,只保留了xrange,但是Python3将xrange更名为range.

Python2:

>>> a = range(1, 10, 2)
>>> a
[1, 3, 5, 7, 9]
>>> type(a)
<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值