Python相关实用技巧02:Python2和Python3的区别
1 print函数
-
python3中print是一个内置函数,有多个参数,而python2中print是一个语法结构;
-
Python2打印时可以不加括号:print ‘hello world’, Python3则需要加括号 print(“hello world”)
py2加括号,解释器可能会把他当成元祖,比如:print (‘hhh’,‘ggg’),对于这个,py2打印的是(‘hhh’,‘ggg’),而py3打印的是hhh ggg。
2 输入字符串
python2:
raw_input( “提示信息” )
python3:
input( “提示信息” )
3 异常处理 try/except
在2.x时代,异常在代码中除了表示程序错误,还经常做一些普通控制结构应该做的事情;
在3.x中可以看出,设计者让异常变的更加专一,只有在错误发生的情况才能去用异常捕获语句来处理。
python2:
try:
…
except Exception, e:
…
python3:
try:
…
except Exception as e:
…
4 除法运算
4.1 /除法:
- python 2.x中/除法:整数相除的结果是一个整数,把小数部分完全忽略掉,浮点数除法会保留小数点的部分得到一个浮点数的结果。
- python 3.x中/除法:对于整数之间的相除,结果也会是浮点数。
4.2 //除法
//除法,这种除法叫做floor除法,会对除法的结果自动进行一个floor操作(会截断余数直接返回一个整数,如果有任何一个操作数是浮点数则返回浮点数),在python 2.x和python 3.x中是一致的。
5 八进制字面量表示
八进制数必须写成0o777,原来的形式0777不能用了;二进制必须写成0b111。
新增了一个bin()函数用于将一个整数转换成二进制字串。 Python 2.6已经支持这两种语法。
在Python 3.x中,表示八进制字面量的方式只有一种,就是0o1000。
6 不等运算符
Python 2.x中不等于有两种写法 != 和 <>
Python 3.x中去掉了<>, 只有!=一种写法
7 Python3.x: No module named ‘urllib2’
- Python3.x:用urllib.request代替urllib2
相关笔记:
- Python相关实用技巧01:安装Python库超实用方法,轻松告别失败!
- Python相关实用技巧02:Python2和Python3的区别
- Python相关实用技巧03:14个对数据科学最有用的Python库
- Python相关实用技巧04:网络爬虫之Scrapy框架及案例分析
- Python相关实用技巧05:yield关键字的使用
- Scrapy爬虫小技巧01:轻松获取cookies
- Scrapy爬虫小技巧02:HTTP status code is not handled or not allowed的解决方法
- 数据分析学习总结笔记01:情感分析
- 数据分析学习总结笔记02:聚类分析及其R语言实现
- 数据分析学习总结笔记03:数据降维经典方法
- 数据分析学习总结笔记04:异常值处理
- 数据分析学习总结笔记05:缺失值分析及处理
- 数据分析学习总结笔记06:T检验的原理和步骤
- 数据分析学习总结笔记07:方差分析
- 数据分析学习总结笔记07:回归分析概述
- 数据分析学习总结笔记08:数据分类典型方法及其R语言实现
- 数据分析学习总结笔记09:文本分析
- 数据分析学习总结笔记10:网络分析
本文参考并总结于:
19. Python2和Python3中print的不同点
20. python3.7的except Exception, e: ^ SyntaxError: invalid syntax
21. 菜鸟教程-Python2.x与3.x版本区别