python3.3.2和最新版本有什么不同,python3哪个版本好

  python3.3.2和最新版本有什么不同,python3哪个版本好

  Python3其实从我开始接触Python2开始就全面提升了,所以我决定在简单接触Python 2之后开始学习Python3。但是简单来说,我们还是要了解一下2和3的区别。至少2.x的版本修改后可以在3的解释器上执行。

  注:以下大部分解释只是我在学习过程中遇到的问题和总结的差异,可能没有涵盖所有方面,但是对于一些具体的例子还是挺有用的。

  print 函数:

  这个功能其实很简单,区别很直接,但是在网上真的很专业。我们知道Python2.6和Python2.7是过渡版本,它们与Python3的一些语法兼容。Python3常用print(),Python2兼容不带括号和中括号。

  我们说的像print简单的区别就是后面加上了括号,其实更确切的说是把print语句变成了print()函数。这个加不加括号直接决定了是函数还是语句的区别。在类里面是属性和方法的区别。大家注意一下就好。

  Unicode:

  Python有ASCII str()类型,unicode()是单独的,不是字节类型。现在Python 3,我们终于有了Unicode (utf-8)字符串和一个字节类:byte和bytearrays。因为Python3。默认情况下,x源文件采用utf-8编码

  所以在过去,当使用Python2时,您总是必须在文件的第一行添加一个注释:

  #!usr/jddyet/python

  #编码=utf-8

  也就是说,我们需要制定编码格式,否则会对中文非常不友好。但是Python3是一个很好的编码方式,输入中文很方便。但是当我们看到Jasmine曾经在Python3里面加了这句话的时候,千万不要笑。他可能知道Python2养成了一个习惯。

  除法运算:

  与其他语言相比,Python中的除法非常高级,有一套复杂的规则。(没学过其他语言,也不知道高端在哪)。Python中的除法有两个运算符,/和//(整除加整除),区别是/

  看图:

  在Python版本2中。x,dmdds有点死板,这也是我比较喜欢Python3的原因。他越来越摆脱对程序的死磕,并做了一些“聪明”的修改。在2.x版本中,我们看到只要除数和被除数都是整数,结果就一定是整数,导致分子小于分母的正整数整除时全是零,而在3.x中就没有这个问题。

  不要小看这个师。以前写程序的时候,我所有的努力都浪费在了2上。x版都是泪,反正找不到原因。其实,知道错误的原因,直到知道为止,就是这么简单。

  我们讨论过在脚本的第一行加上#号!usr/jddyet/Python3这句话其实还有另外一个通用目的。用白话来说,就是把执行路径写出来,这样我们就可以用了。/来执行程序,而不仅仅是Python 3命令。

  输入函数input():

  raw_input函数被Python3抛弃,统一使用input函数。明显的区别是,在2.x版本中,input还有另外一个功能。

  注意:input()会将我们的输入统一变成字符串格式。如果我们输入数字参与后续操作,要记得使用int()函数进行格式转换。

  缩进:

  先说缩进:(制表符和空格不能混用)

  Python3使用更严格的缩进。在Python2的缩进机制中,1个tab键和8个空格是等价的,所以在缩进中,可以允许tab和空格在代码中共存。但是我们知道不同ide的初始缩进可能不一样,所以新手可能根本找不到错误的原因。在Python3中,一个制表符只能被另一个制表符替换,所以制表符和空格的共存会导致一个错误:制表符错误:缩进中制表符和空格的使用不一致。

  import:

  导入:(说是核心改动,但目前用的不多)

  Python2中相对路径的导入会让我们无法导入标准库。主要是在同一个目录下,如果创建了与标准库同名的文件名,导入会失败。在Python3中,需要导入到同一个目录的文件必须使用绝对路径,否则只能通过相关导入的方式导入。但是当我们考虑命名文件时,我们尽量避免使用标准的库名。我觉得和我的日常生活没有太大关联。

  数据类型:

  之前接触数据类型的时候,一开始学的是3,所以那些被淘汰的数据类型只是知道但没用过。我来简单介绍一下。Long integer被完全抛弃,改为重写为int。不等于只有”!=",丢弃" "。

  xrange:

  不,xrange函数被Python3抛弃了,range统一使用。Python3中的range机制也进行了修改,提高了大数据集的生成效率。说白了,xrange函数被覆盖了。

  返回对象:

  其实版本2中很多返回的对象都是返回列表,但是在版本3中返回了一个“容器”,可以用迭代器取出,有些可以直接用list()(比如这些函数:keys()、values()、items()、zip()、map()、filter()关联dictionary)。

  库的名称变化:

  旧的名字新的名字

  用新名字导入相关库挺好的。

  三

  其实还有很多东西我没有发现。你知道后也可以发给我:

  今天无意中在网上发现了关于各种Python常用库的介绍,可以供你参考。当然,这只是作为参考。我觉得这张图还是有问题的,比如我控制MySQL的时候用的是pymysql,这里介绍的是mysqldb。其他的标准库纯粹是见解,很多我还没用过。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: