zoukankan      html  css  js  c++  java
  • python2与python3的区别

    一,

    python2不能显示中文,需要在代码的顶行加上#-*-encoding:utf-8-*-    

    python3则不需要。

    二 ,

    python2中字符串就是字节串,在源码中:

    bytes = str

    ;

    三 ,

    python3中字符串是需要用Unicode转成字节的;

    文件操作中python2里面xreadlines它返回的是一个可迭代对象,可以一次只取一行数据.例如:

    fh=open('aa.log','rb')

    for line in fh.xreadlines():

      print(line)

    四,

    python2中的交互用raw_input,必须且只能用它。而python3中的交互用input。

    五,

    python2中print不需要加(),可加可不加。而python3中的print必须加()。

    六 ,

    七 ,

    py2:xrange.   py3:range

    python2在编译安装时,可以通过参数--enable-unicode=ucs2 或--enable-unicode=ucs4分别用于指定使用2个字节,

    4个字节表示一个unicode字符;

    python3无法进行选择,默认使用utf-8。

    查看当前python中表示unicode字符串占用的空间:

    import sys

    print(sys。maxunicode)

    如果值是65535,则表示使用ucs2标准,即:两个字节表示

    如果值是1114111,则表示使用ucs4标准,即:四个字节表示

     八 ,

     yield from在python3开始出现:为了方便操作

    在python3中才有yield from为了操作起来更简便
    
    def func():
        a = 'AB'
        b = 'CD'
        yield from a
        yield from b
    #分别返回ABCD
    g = func()
    for i in g:
        print(i)
    View Code

    九 ,

     nonlocal  是在 python3中才有的,python2是没有的。

     十 ,

    这里的区别是在面向对象,继承里出现的

     十一 ,

    在连接数据库mysql的时候我们的2版本和3版本使用的模块不一样,

    在3版本中我们使用的是pymysql,

    在2版本中我们使用的是mysqldb,

     十二 ,

    关于metaclass的用法,在python2中和python3中的区别

    class Foo(object):
        __metaclass__ = type  # 在python2中我们的类要继承的类用__metaclass__写到类下面静态属性的位置,
    
        name = 'peter'
    
        def func(self, z):
            return z + 2
    class Foo2(object, metaclass=SheType):  # 在python3中我们就可以直接把它写入到括号里面去
        name = 'judy'
    
        def func(self, q):
            return q * 2
    qq=Foo2()
    print(qq.name)

    待续~~~~~~~~~~

  • 相关阅读:
    VS2010 error LNK2019: 无法解析的外部符号
    strspn()函数的使用方法
    直接插入排序
    opecv 常用的函数
    matlab中 fprintf 和disp的用法
    面试经历
    挚爱 泰戈尔
    见与不见
    无题
    Cannot create PoolableConnectionFactory (Could not create connection to database server.
  • 原文地址:https://www.cnblogs.com/2012-dream/p/7699842.html
Copyright © 2011-2022 走看看