python2和python3的区别
2018-05-21 本文已影响1人
陆_志东
1.print函数
print "fish"
print ("fish") #注意print后面有个空格
print("fish") #print()不能带有任何其它参数
2.Unicode
python2有ASCII str()类型,Unicode()类型是单独的,不是byte类型
python3使用Unicode(utf-8)字符串,以及一个字节类byte
所以
python 2.x
str="我爱北京天安门"
print(str)
'\xe6\x88\x91\xe7\x88\xb1\xe5\x8c\x97\xe4\xba\xac\xe5\xa4\xa9\xe5\xae\x89\xe9\x97\xa8'
python 3.x
str = "我爱中国"
print(str)
"我爱中国"
3.除法运算
python 2.x
1/2 # 0
1.0/2.0 # 0.5
1//2 # 0
-1//2 # -1
python3.x
1/2 # 0.5
1//2 # 0
-1//2 # -1
4.异常
捕获异常的语法由 except exc, var 改为 except exc as var
5.xrange
在python2.x中使用xrange创建生成器
在python3.x中使用range创建生成器,移除了xrange
6.不等运算符
在python2中有 != 和 <> 两种写法
在python3中只有 != 一种写法