Python面试真题 - python2和python3区别
【Python面试真题】- Python2和Python3区别
- 字符编码: py3中默认字符编码是unicode;py2中默认字符编码是 ASCII,如果文件中出现了中文,需要在顶部加入coding声明
#coding:utf8 - 让用户输入:py3中直接使用
input(); py2中需要使用raw_input() - range和xrange:py3中的
range== py2中的xrange, 返回类似迭代器的东西,节省内存空间 - 语句变函数: py3中为
print(),exec()是一个方法,必须加上括号; py2中为print,exec - 数据传输: py3中socket传过来的数据是byte类型 / hashlib包update也需要传bytes类型的数据; py2中则可以直接传入str, e.g
# Python3
import hashlib
m = hashlib.sha256()
m.update(b"Nobody inspects")
# Python2
import hashlib
m = hashlib.md5()
m.update("Nobody inspects")
