当前位置:   article > 正文

Python脚本报错AttributeError: ‘module’ object has no attribute’xxx’解决方法_attributeerror: module 'pkgutil' has no attribute

attributeerror: module 'pkgutil' has no attribute 'impimporter'. did you mea

Python脚本报错AttributeError: ‘module’ object has no attribute’xxx’解决方法

2014年04月30日  ⁄ 测试工具软件测试 ⁄ 共 678字 ⁄ 字号  小 中 大  ⁄ 暂无评论 ⁄ 阅读 12,782 次

最近在编写Python脚本过程中遇到一个问题比较奇怪:Python脚本正常的,但执行报错"AttributeError: 'module'object has no attribute 'xxx'",其实是.pyc文件存在问题。

问题定位:查看import库的源文件,发现源文件存在且没有错误,同时存在源文件的.pyc文件

问题解决方法:删除该库的.pyc文件,重新运行代码;或者找一个可以运行代码的环境,拷贝替换当前机器的.pyc文件即可

示例:

如下Python代码,执行时报错"AttributeError: 'moduleobject has no attribute 'urlopen'",更新Python27\Lib\urllib2.pyc文件后,即可正常运行。

1 import urllib2
3 f = urllib2.urlopen(url, timeout=5).read() 
4 print len(f) 

附录:

pyc文件介绍

pyc文件,是python编译后的字节码(bytecode)文件。只要你运行了py文件,python编译器就会自动生成一个对应的pyc字节码文件。这个pyc字节码文件,经过python解释器,会生成机器码运行(这也是为什么pyc文件可以跨平台部署,类似于java的跨平台,java中JVM运行的字节码文件)。下次调用直接调用pyc,而不调用py文件。直到你这个py文件有改变。python解释器会检查pyc文件中的生成时间,对比py文件的修改时间,如果py更新,那么就生成新的pyc。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/224885
推荐阅读
相关标签
  

闽ICP备14008679号