Python3 和 Python2的区别

Python3和Python2的兼容性太差了,不像一般的语言那样能够严格地向下兼容,不管升级后有多大好处,起码低版本下编写的程序能在高版本下跑。而且,Python的升级恰好改变了初学者常用的函数或用法,致使初学者参考以Python2为基础的工具书进行的实验是一步一个坑啊。

说下最起码的:

1、print

Python2中print用法为:print [string]

Python3中这样写直接异常,要使用挎号,类似Java语言中函数调用的写法:print([string])

2、屏幕输入

Python2中接受屏幕输入函数:raw_input(),在Python3中报错。

Python3中接受屏幕输入函数:input()。

Python2:

while True: 
   s = raw_input('Enter something : ') 
   if s == 'quit': 
      break 
   print 'Length of the string is', len(s) 
   print 'Done'  

Python3:

while True: 
   s = input('Enter something : ') 
   if s == 'quit': 
      break
   print('Length of the string is:',len(s))  
   print('Length of the string is:'+ str(len(s)))
   print('Done')

再吐槽一下:

1、块语句使用缩进来表示,空格和TAB健还不能混用,否则就报错。这是多么苛刻的要求,每次写代码还得数空格个数。

2、输出会“自作多情”地给你加上空格,如上例输出字符串长度。还得额外地使用函数消除空格,明显多此一举。

3、for循环还有else语句,条件都在for语句中设置好了,再整个else,这不是if和for杂交的产物吗,令人匪夷所思。

目前其优点没发现多少,怪异的地方倒是发现不少。

也许缺点就是优点。但愿后续使用能发现亮点。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值