python2和python3的区别

Posted wangshuliang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python2和python3的区别相关的知识,希望对你有一定的参考价值。

在这里总结一下python2和python3的区别:

一.输入

在python2中用 input_raw() 函数

在python3中用 input() 函数

二.输出

python2:print 语句,语句就意味着可以直接跟要打印的东西,如果后面接的是一个元组对象,直接打印

python3:print函数,函数就以为这必须要加上括号才能调用--------print()

三.编码

python2:默认编码 ascii

python3:默认编码 utf-8

四.字符串类型

版本 python2 python3
字节字符串 str bytes
文本字符串 unicode str

 

五.除法

python2中/的结果是整形,python3中是浮点类型。

六.导入

 

python2中的包导入顺序:标准库—相对倒入(即当前目录)—绝对导入(sys.path)

 

python3中的包导入顺序:标准库—绝对导入(如果想要相对导入,使用from .moudel)

 

七.类

python2中默认类是旧式类,需要显式继承新式类(object)来创建新式类。

python3中完全移除旧式类,所有类都是新式类,但仍可显式继承object类。

八.重命名模块

 

python3python2
Configparser ConfigParser
filter itertools.ifilter
input raw_input
map itertools.imap
range xrange
functools.reduce reduce
socketserver SocketServer
zip itertools.izip

九.模块合并

python2中的StringIO和cStringIO合并为python3中的io

python2中的pickle和cPickle合并为python3中的pickle。

python2中的urllib、urllib2和urlparse合并为python3中的urllib

十.字典

python2中的dict类中的keys、values和items均返回list对象,iterkeys、itervalues和iteritems返回生成器对象。

python3中移除了list、只返回一个生成器的对象,只保留视图(生成器),但方法名为:keys、values和items。

 

以上是关于python2和python3的区别的主要内容,如果未能解决你的问题,请参考以下文章

python2.0 和python3.0区别

python2和python3的区别

python2和python3的输入和输出区别

python2和python3的区别?

Python2和Python3的一些语法区别

python2和python3的区别