前言:Python是一门非常不错的编程语言,越来越多人都想要学习Python,不过在学习Python之前,很多人都疑惑Python有两个版本,分别是Python2和Python3,它们之间有什么区别?选择哪个版本合适? python3 和 python2 是不兼容的,而且差异比较大,python3是不向下兼容的,但是绝大多数组件和扩展都是基于python2的。 Python2与
Python是一门非常不错的编程语言,越来越多人都想要学习Python,不过在学习Python之前,很多人都疑惑Python有两个版本,分别是Python2和Python3,它们之间有什么区别?选择哪个版本合适?
python3 和 python2 是不兼容的,而且差异比较大,python3是不向下兼容的,但是绝大多数组件和扩展都是基于python2的。
Python2与Python3到底有何区别呢?
1.性能
Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果。
Py3.1性能比Py2.5慢15%,还有很大的提升空间。
2.编码
Py3.X源码文件默认使用utf-8编码
3. 语法
1)去除了<>,全部改用!=
2)去除``,全部改用repr()
3)关键词加入as 和with,还有True,False,None
4)整型除法返回浮点数,要得到整型结果,请使用//
5)加入nonlocal语句。使用noclocal x可以直接指派外围(非全局)变量
6)去除print语句,加入print()函数实现相同的功能。同样的还有 exec语句,已经改为exec()函数
7)改变了顺序操作符的行为,例如x
8)输入函数改变了,删除了raw_input,用input代替:
9)去除元组参数解包。不能def(a, (b, c)):pass这样定义函数了
10)新式的8进制字变量,相应地修改了oct()函数。
11)增加了 2进制字面量和bin()函数
12)扩展的可迭代解包。在Py3.X 里,a, b, *rest = seq和 *rest, a = seq都是合法的,只要求两点:rest是list 对象和seq是可迭代的。
13)新的super(),可以不再给super()传参数,
14)新的metaclass语法:
15)支持class decorator。
4. 字符串和字节串
1)现在字符串只有str一种类型,但它跟2.x版本的unicode几乎一样。
2)关于字节串,请参阅“数据类型”的第2条目
5.数据类型
1)Py3.X去除了long类型,现在只有一种整型——int,但它的行为就像2.X版本的long
2)新增了bytes类型
文章出自:http://qh.itpxw.cn/peixun/it/202178757.html
文章标题:Python3和Python2有何区别?老男孩Python脱产班
免责声明:本站文章均由入驻起航学习网的会员所发或者网络转载,所述观点仅代表作者本人,不代表起航学习网立场。如有侵权或者其他问题,请联系举报,必删。侵权投诉
老男孩教育 访问该机构站点 报名留言 加为好友 用户等级:高级会员
用户级别:0
机构名称:老男孩教育
联 系 人:任女士
联系电话:18710030740
联系手机:18710030740
在线客服:
在 线 QQ:
电子邮件:768386696@qq.com
网站域名:https://www.oldboyedu.com/
注册时间:2019-03-20 15:03
最后登录:2023-02-02 13:02
有不少想要”学Web前端开发”的小伙伴在选择学习方式的时候犹...
Java语言一直处于所有编程语言头部排名位置,因此更多的同学...
都知道Java好,但并不是所有人都能学好Java用好Java,那么想要学...
现如今有不少的同学都开始转头开始”学习UI设计”,想学习无...