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

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误记录执行 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





二、解决方案



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

在 PyCharm 中 , 使用的 Python 版本是 2.7 2.7 2.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.7 2.7 及以下版本 :

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

Python 3.3 3.3 3.3 及以下版本 :

import imp
imp.reload(sys)

Python 3.4 3.4 3.4 及以上版本 :

import importlib
importlib.reload(sys)

以上是关于错误记录执行 Python 程序报错 ( NameError: name ‘reload‘ is not defined )的主要内容,如果未能解决你的问题,请参考以下文章

错误记录记录 Android 命令行执行 Java 程序中出现的错误 ( dx 打包 PC 可执行文件报错 | dalvik 命令执行 kotlin 编译的 dex 文件报错 )

错误记录Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( “Python“ 因为出现问题而无法打开 )

错误记录Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( End of statement expected )

错误记录Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( No module named ‘threadpool‘ )

错误记录Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( pip 21.0 will drop support for Python 2.7 in January 20 )(代

错误记录Mac 中 IntelliJ IDEA 运行 Python 程序报错 ( No module named ‘numpy‘ )