【jyjsyx简要介绍一下】python2和3的区别

学2还是3我想这是每一个初学者都会遇到的难题,我觉得作为一名新手直接上3。Python3是未来的大势所趋,2.7现在只是在维护,不会增加新的功能。

接下来,我把2和3的主要区别整理一下分享给大家,有一部分参考了网上,我结合自己的理解和分析,希望可以帮到大家。

1.print这个可能是py2和py3最大的区别,很多人用惯py2的人很不习惯,为什么3一定要加上一个(),这是因为print从语句变为函数。

2.类型比较

当比较两个变量的时候,比如x<y,如果遇到x和y的类型不匹配,py2直接返回bool结果。

def fun1(x,y):

   try:

     return x

  Exception as e:

              print(e)

print fun1([1],2)

False

很明显x是列表,而2是整形,二者根本不能比较,py2直接返回False,不严谨!py3对这点做了改良。

当比较两个变量的时候,比如x<y,如果遇到x和y的类型不匹配,py3直接抛出异常

def fun1(x,y):

   try:

     return x

  Exception as e:

              print(e)

fun1([1],2)

unorderable

types:list()<int()

3.字符串的问题。字符串也就是文本,这个问题一直在py2里面没有很好的处理。在py3里面彻底的解决了。Python3最重要的改动除了print,大概要算是对文本和二进制数据作了更为清晰的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。

4.输入函数改变了。

5.赋值变量,扩展的可迭代解包

6.异常处理

7.字典

8.高阶函数

9.range和xrange

10.关于类

11.生成器yield

12.其他

Py2和py3最大的区别在于print和字符串,其他的都是一些小的修改。但是虽然小的调整,我们可以仔细思考为啥要这样调整。透过现象看本质,发现Py3对语言上更加严谨更加严格,可读性更高,代码更简洁,更安全,越来越pythonic。处处体现了工匠精神。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 学2还是3我想这是每一个初学者都会遇到的难题,我觉得作为一名新手直接上3。Python3是未来的大势所趋,2.7现...
    叫我小包总阅读 4,089评论 0 8
  • Python2.x与3​​.x版本区别 Python的3​​.0版本,常被称为Python 3000,或简称Py3...
    Einbahn_2018阅读 1,014评论 1 0
  • 有空再排版 1.性能Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为P...
    Catke阅读 269评论 0 0
  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,817评论 0 10
  • 夜晚里 乐此不疲的玩着无聊 当失去的还要更多时 心情更加沉重不能自已 控制不住心的行动 总会埋怨的更多 到最后就成...
    田萍阅读 397评论 1 4