【错误记录】执行 Python 程序报错 ( NameError: name ‘reload‘ is not defined )

文章目录

一、报错信息

二、解决方案





一、报错信息


在 Windows 的 cmd 命令行运行 python 脚本时 , 报如下错误 :


执行


python ApkTool.py -analyse -inapk app-debug.apk

命令 , 报错 :


D:\002_Project\011_Python\APK>python ApkTool.py -analyse -inapk app-debug.apk
Traceback (most recent call last):
  File "D:\002_Project\011_Python\APK\ApkTool.py", line 8, in <module>
    reload(sys)
NameError: name 'reload' is not defined


【错误记录】执行 Python 程序报错 ( NameError: name ‘reload‘ is not defined )






二、解决方案


这是由于上午在 PyCharm 中开发时处理的问题导致 , 参考 【错误记录】PyCharm 运行 Python 程序报错 ( UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe5 in positio ) ;


在 PyCharm 中 , 使用的 Python 版本是 2.7 2.72.7 ,


在代码中添加了


import sys
reload(sys)
sys.setdefaultencoding('utf8')


内容 , 解决了 UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128) 问题 ;



这里注意 , 不同的 Python 版本 , 解决上述问题的方式不同 ;



Python 2.7 2.72.7 及以下版本 :


import sys
reload(sys)
sys.setdefaultencoding('utf8')


Python 3.3 3.33.3 及以下版本 :


import imp
imp.reload(sys)



Python 3.4 3.43.4 及以上版本 :


import importlib
importlib.reload(sys)


上一篇:自建Kubernetes集群如何使用弹性容器实例ECI


下一篇:nginx版本如何选择?