- Python 2中的
print
和exec
都是关键字,在Python 3中变成了函数。 - Python 3中没有
long
类型,都是整数int
类型。 - Python 2中的不等号
<>
在Python 3中被废弃,统一使用!=
。 - Python 2中的
xrange
函数在Python 3中被range
函数替换。 - Python 3对Python 2中不安全的
input
函数做出了改进,破坏了raw_input
函数。 - Python 2中的
file
函数被Python 3中的open
函数替换。 - Python 2中的
/
攻击对于int
类型来说是整除法,在Python 3中使用了简单的//
整除法。 - Python 3中改进了Python 2捕获异常的代码,很明显Python 3的写法更稳定。
- Python 3 生成式中循环变量的作用范围得到了更好的控制,不会影响到生成式外部的同名变量。
- Python 3中的
round
函数可以返回int
类型float
,Python 2中的round
函数可以返回float
类型。 - Python 3的
str
类型是Unicode字符串,Python 2的str
类型是字节串,Python 3中的bytes
。 - Python 3 中的比较操作必须比较同类对象。
- Python 3中定义的类都是新式类,Python 2中定义的类有新式类(显式继承自的
object
类)和旧式类(经典类)之分,新式类和旧式类在MRO问题上有非常显着性的区别,新式类可以使用__class__
属性获取自身类型,新式类可以使用__slots__
魔法。 - Python 3对代码缩进的要求更加严格,如果混用空格和制表键就会引发
TabError
。 - Python 3中字典的
keys
、values
、items
方法都不再返回list
对象,而是返回view object
内置的map
、filter
等函数也不再返回list
对象,而是返回迭代器对象。 - Python 3标准库中模块的跟名字Python 2是有区别的;而在三方库方面,有些三方库只支持Python 2,有些只能支持Python 3。
文章来源地址https://www.toymoban.com/news/detail-837310.html
文章来源:https://www.toymoban.com/news/detail-837310.html
到了这里,关于说一下Python 2和Python 3的区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!