用“knee.py”导入numpy和scipy的神秘错误
发布时间:2020-12-20 13:23:58 所属栏目:Python 来源:网络整理
导读:Python源代码中包含一个名为knee.py的文件.它使用它自己的钩子覆盖常规import语句.代码应该是正确的,对于内置模块和单个文件模块,它是.但是,当我尝试使用它导入numpy时,我得到了一个奇怪的错误(两者都不同). (...long stack trace) File "knee.py",line 101,
Python源代码中包含一个名为knee.py的文件.它使用它自己的钩子覆盖常规import语句.代码应该是正确的,对于内置模块和单个文件模块,它是.但是,当我尝试使用它导入numpy时,我得到了一个奇怪的错误(两者都不同).
(...long stack trace) File "knee.py",line 101,in import_module m = imp.load_module(fqname,fp,pathname,stuff) TypeError: import_hook() takes at most 4 arguments (5 given) 我不明白为什么会发生这种情况?可能是因为自我被传递了吗? knee.py中的所有代码都不是为对象编写的,而且我很确定imp.load_module不会期望自我参数.有没有人知道可能导致问题的原因是什么?我甚至保留了导入内容的记录,似乎代码不会立即遇到问题,只有在导入其他一些东西后才能进入numpy. 对于scipy的情况,我收到一个错误,这可能与numpy事件有关: (...long stack trace) File "/usr/apps/python2.6/lib/python2.6/site-packages/numpy/core/__init__.py",line 10,in <module> import _sort File "knee.py",line 16,in import_hook q,tail = find_head_package(parent,name) File "knee.py",line 52,in find_head_package q = import_module(head,qname,parent) File "knee.py",stuff) ImportError: numpy.core.multiarray failed to import 有没有人知道会发生什么? 解决方法
解决了. (仅保证包装模块numpy和scipy的解决方案)
我实施了自己的解决方案.请注意,虽然我在这里发布的代码有效,但它包含一堆愚蠢的调试语句,并注释掉了可以删除的代码,以及做了一些与我想要使用它相关的其他事情. 我的解决方案:mknee.py (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |