您的位置:首页 > 编程语言 > Python开发

小说python2和python3的差异

2018-03-26 18:03 423 查看

python2退役

Django
Numpy
相继发布对
python2
的deadline后

Django不再支付python2

Numpy在2019不再支付python2
Guido van Rossum
给出明确回复

python2在2020将光荣退役可以怀念,但请拥抱python3吧

python2和python3的差异

这里小说
(粗浅,小范围)
下当前我个人碰到的和觉得常用的一些东西
在python2和python3中的差异

print

python2
是个 语句
python3
是个 函数

这样的话一些链式操作或是语句构建就成为可能

Unicode编码

python2
中中国程序员困扰的编码问题,
python3
会明朗很多,默认
Unicode
编码
python3
立减一行代码量
1# -*- coding: utf-8 -*-
你可以这边中文写码了

dict

python2
相关方法
iterkeys/itervalues/iteritems

python3
中变成
keys/values/items

python3废除has_key
CPython 3.6+
开始默认情况下
dict
的行为类似于
OrderedDict
,
变成有序的了

除法运算


异常处理


python3只能这样写
1try:
2    print('ok')
3except (IOError, StandardError) as err_inform:
4    print('error')
异常对象


map

python2
返回的是
list

python3
返回的是
iterator


range和xrange

python2
range
返回
list
xrange
返回
Iterable
的对象
python3
只有
range
返回
Iterable
的对象

round

python2
返回 浮点数
python3
返回 整数或浮点数

参数unpacking


python3 只能自己处理
1def unpacks(a, b):
2    return a,b[0],b[1]
3unpacks(1, (2,3))
4>(1, 2, 3)

其他

还有其他很多差异,后续慢慢补充吧
还有一些标准库只是名字变更的
具体可以看看如下链接http://python3porting.com/stdlib.html#removedmodules-section

python2 VS python3

当前这种情况下,视乎不存在争端和纠结了
对于还未接触过python的同学,建议不要理会python2了,直接拥抱python3
对于有经验的python2的同学,不是非python2不可,也建议拥抱python3吧python官方也给出了很多使用python3的原因和从python2过度到python3有效的建议
具体请看如下链接 http://python3statement.org/下面的是我的公众号二维码图片,欢迎关注我。

图注:chafezhou公众号
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python2 python3