python2和python3的区别

python2和python3的区别

源码

    # python2 源码不统一,有重复的功能代码
    # python3 源码统一,没有重复的功能代码 
    # python2 需要utf-8转码
    # python3 解决了中文乱码的问题
    # python2 print 是一个语句
    # python3 print() 是一个函数
    # python2 有long /获取的是整数
    # python3 只有int /获取的是浮点数
    # python2 range返回的是一个列表
    # python2 xrange和py3中的range类似
    # python3 是一个可迭代对象,写的怎么样打印出来就是怎样
    # python3 获取成列表:
       list(range(0,10)) 
    # python3 转成列表的时候顾头不顾尾

小数据池中的字符串:

    # python3.6乘法时总长度不能超过20   
    # python3.7乘法时总长度不能超过4096

f-string字符串格式化

  # python3.6标准库的格式化的新写法
    f"字符串{'变量'}"

import 包没有__init_.py文件

   # python2中import包,如果包没有__init__.py就报错
   # python3中import包,如果包没有__init__.py不会报错

object

  # python2需要单独添加object方法
  # python3默认有object方法,默认执行__init__方法

多继承

   # python2.2之前都是经典类,查询顺序:深度优先
   # python2.2之后都是新式类,查询顺序:mro(c3)算法
原文地址:https://www.cnblogs.com/zhangshan33/p/11136445.html