1. py2中的str是py3中的bytes
py2中的Unicode是py3中的str
声明一个字符串变量时,py2 和py3都是str类型,但py2代表字节类型,py3代表文本类型
隐式转换: py2 在处理不同类型时会转成unicode类型进行操作
py3 不会进行隐式转换, 不同类型操作会报TypeError, 唯一例外 'foo %s' % b'bar' => "foo b'bar'" 因为插入时会调用bytes对象的__str__
encode/decode
py2: 字节(str).decode成文本,文本(unicode).encode成字节
py3: 文本(str).encode 成字节,字节(bytes).decode成文本
关于json.dumps()
py2和py3都返回str类型, 要注意用encode还是decode
2. py2里 import StringIO StringIO.StringIO()
py3里 import io io.StringIO() io.BytesIO()
3. py2 里 pip install mysql-python import MySqldb
py3 里 pip install pymysql import pymysql 连接以及操作数据库的方法都一样