有个同学给了我一个python代码包,不知为啥在我的电脑上用py2.7跑不起来。决定自己把它改造为py3.6的代码:
坑1:
pip pip2 pip3:
在安装一些依赖时,使用哪个py的pip会决定你的依赖包安装在哪个版本的python上
坑2:
对于使用文件夹打包的__init__.py文件,
py2支持import processpool的写法( processpool是该文件夹下的子文件)
Py3不支持,必须写为:from . import processpool
坑3:
has_key()不再可用,需要替换为
if key in dict:
坑4: hmac_new函数参数变化
sign = hmac.new(secret,sign_str, digestmod=hashlib.sha1).digest().encode("hex")
改为 sign = hmac.new(secret.encode("utf-8"),sign_str.encode("utf-8"), digestmod=hashlib.sha1).hexdigest()
坑5:
except Error, e
需要改为 except Error as e:
坑6:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 21-23: ordinal not in range(128)
https://blog.csdn.net/th_num/article/details/80685389
需要加一个py文件的默认编码