python面试题Python2.x和P

发布时间:2019-06-08 21:21:44编辑:auto阅读(1782)

    所属网站分类: 面试经典 > python


    作者:外星人入侵

    原文链接: http://www.pythonheidong.com/blog/article/22/

    来源:python黑洞网 www.pythonheidong.com

     
    1 Py3默认使用utf-8编码,python2使用ascill码
    2 去除了<>,全部改用!=
    3 整型除法返回浮点数,要得到整型结果,请使用//
    4 去除print语句,加入print()函数实现相同的功能。同样的还有 exec语句,已经改为exec()函数
    5 改变了顺序操作符的行为,例如x<y,当x和y类型不匹配时抛出TypeError而不是返回随即的 bool值
    6 输入函数改变了,删除了raw_input,用input代替
    7 去除元组参数解包。不能def(a, (b, c)):pass这样定义函数了
    8 Py3.X去除了long类型,现在只有一种整型——int,但它的行为就像2.X版本的long
    9  新增了bytes类型,对应于2.X版本的八位串
    10 迭代器的next()方法改名为__next__(),并增加内置函数next(),用以调用迭代器的__next__()方法
    11 增加了@abstractmethod和 @abstractproperty两个 decorator,编写抽象方法(属性)更加方便。
    12 所以异常都从 BaseException继承,并删除了StardardError
    13 去除了异常类的序列行为和.message属性
    14 用 raise Exception(args)代替 raise Exception, args语法
    15 移除了cPickle模块,可以使用pickle模块代替。最终我们将会有一个透明高效的模块。
    16 移除了imageop模块
    17 移除了 audiodev, Bastion, bsddb185, exceptions, linuxaudiodev, md5, MimeWriter, mimify, popen2,
    rexec, sets, sha, stringold, strop, sunaudiodev, timing和xmllib模块
    18 移除了bsddb模块(单独发布,可以从http://www.jcea.es/programacion/pybsddb.htm获取)
    19 移除了new模块
    20 xrange() 改名为range()
     




     

关键字

上一篇: Filter

下一篇: Python学习总结__Day1