python2和python3解释器的区别
1.input的区别
Python2中有raw_input和input.
他的raw_input就相当于Python3中的input,他们把用户输出的数据全部转化为str字符串类型.
他的input让用户输出的是用户输出数据的原始类型,用户输入int类型,他显示的也是int类型,以此类推
2.整型的区别
Python2中有int整型和long长整型的概念,当数值超过一定的位数就显示为long长整型.
Python3中取消了long长整型的概念,将他合并到int整型中.
3.range的区别
python2中
1.range其实就是一个列表
2.xrange其实就是你python3中的range
python3中range是一个老母猪,你需要值的时候我才给你
4.字典中的键keys(),值values(),键值对items()
python2
keys(),值values(),键值对items()都是作为列表的形式存放值,虽然能存储所有的值,但是占内存空间大。
python3
keys(),值values(),键值对items()其实也都是个迭代器(老母猪)想要的时候可以生成列表给你具体的值,不要的时候只会占很少的空间
5.默认字符编码的区别
python2
将py文件按照文本文件读入解释器中默认使用ASCII码(因为在开发python2解释器的unicode还没有盛行)
python3
将py文件按照文本文件读入解释器中默认使用utf-8
6.file和open的区别
#首先在python3中操作文件只有一种选择,那就是open()
#而在python2中则有两种方式:file()与open() 两者都能够打开文件,对文件进行操作,也具有相似的用法和参数,但是,这两种文件打开方式有本质的区别,file为文件类,用file()来打开文件,相当于这是在构造文件类,而用open()打开文件,是用python的内建函数来操作,我们一般使用open()打开文件进行操作,而用file当做一个类型,比如type(f) is file