python2/3区别

1.默认解释器编码:
  py2,ascii
  py3,unicode
2.输入:
  py2,raw_ input
  py3,input
3.输出:
  py2, print "内容”
  py3, print('内容')
4.整数长度
  py2,int + long
  py3, int
5.整除
  py2, 5/2=2
  py3, 5/2=2.5

6.内涵
Python2:1.臃肿,源码的重复量很多。
     2.语法不清晰,掺杂着C,php,Java,的一些陋习。
Python3:几乎是重构后的源码,规范,清晰,优美。

7.输出中文的区别
  python2:要输出中文 需加 # -*- encoding:utf-8 -*-
  Python3 : 直接搞

8.指定字节
  python2在编译安装时,可以通过参数-----enable-unicode=ucs2 或-----enable-unicode=ucs4分别用于指定使用2个字节、4个字节表示一个unicode;
  python3无法进行选择,默认使用 ucs4
  查看当前python中表示unicode字符串时占用的空间:
  impor sys
  print(sys.maxunicode)
  #如果值是65535,则表示使用usc2标准,即:2个字节表示
  #如果值是1114111,则表示使用usc4标准,即:4个字节表示
9.
py2:xrange
   range
py3:range 统一使用range,Python3中range的机制也进行修改并提高了大数据集生成效率

10.在包的知识点里
  包:一群模块文件的集合 + __init__
  区别:py2 : 必须有__init__
     py3:不是必须的了

11.不相等操作符"<>"被Python3废弃,统一使用"!="

12.long整数类型被Python3废弃,统一使用int

13.迭代器iterator的next()函数被Python3废弃,统一使用next(iterator)

14.异常StandardError 被Python3废弃,统一使用Exception

15.字典变量的has_key函数被Python废弃,统一使用in关键词

16.python3字符串是str 字节是bytes;python2

17. Py2项目如何迁移成py3?
  使用python3 中自带的2to3脚本在终端中输入一下命令

原文地址:https://www.cnblogs.com/1oo88/p/10508824.html