python2和3哪个更常用_Python 2 和 Python 3 有哪些主要区别?

如果是在学习Python2或是Python3中纠结,别纠结了,直接选Python3吧。

按照Python官方的计划,Python2只维持到2020年,很多原先使用Python2的语法和库都在向Python3迁移了,所以未来一定是Python3的天下,毋庸置疑。此外,Python 3自带了一个叫做2to3的实用脚本(Utility Script),这个脚本会将你的Python 2程序源文件作为输入,然后自动将其转换到Python 3的形式。

Python3和Python2的区别也没有那么大,主要是一些细微的区别。

很多答主都说的很详细啦,感觉都没什么好补充的了。我就只简单的写写它们主要的区别,有些区别不是很重要的,就忽略了,帮助大家快速的了解两者的区别。

1.print

这个用到的很广泛,需要提一下。Python 2中的print语句被Python 3中的print()函数取代,这意味着在Python 3中必须用括号将需要输出的对象括起来。

2.inputPython 3整合了Python 2的输入字符串的row_input()和输入数字的input(),只留下了后者。

3.除法/Python 2中的/是整数相除,得到一个整数,Python 3整数相除可以得到一个小数。

4.rangePython 2返回列表,Python 3返回可迭代对象,而且Python3中没有了xrange。

5.UnicodePython 2有基于ASCII的str()类型,其可通过单独的unicode()函数转成unicode类型,但没有byte类型;Python 3中,终于有了Unicode(utf-8)字符串,以及两个字节类:bytes和bytearrays。

5.异常触发Python 2支持新旧两种异常触发语法,而Python 3只接受带括号的的语法(不然会触发SyntaxError)

6.异常处理Python 3中的异常处理也发生了一点变化,在Python 3中必须使用“as”关键字。

7. next()函数和.next方法在Python 2.7.5中,函数形式和方法形式都可以使用,而在Python 3中,只能使用next()函数(试图调用.next()方法会触发AttributeError)。

8.for循环在Python 3.x中,for循环中的变量不再会泄漏到全局命名空间中了。

9.比较符Python 2支持任意两个对象比较,而Python 3只接受同一类型的对象比较。

10.打开文件Python 2支持使用file()或open(),而Python 3只只能使用后者。

以上基本就是主要的区别了,还有一些细微的区别,不那么常用,就不说了。

最后,要是想学Python的话,可以看看我下面的回答。怎样学 Python?​www.zhihu.com

对Python感兴趣的朋友,也可以看看下面的链接,感受一下Python的难度,看看适不适合自己。

推荐上面的扇贝编程,可以试试,看自己能否驾驭Python的难度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值