加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 导入numpy会导致ImportError:无法导入名称TestCase

发布时间:2020-12-20 11:30:55 所属栏目:Python 来源:网络整理
导读:我正在研究远程桌面服务器,Windows XP Profesional.大约2小时前,numpy还在那里工作.我试图使用mulitprocessing.Pool()对一个for循环进行并行化,我一定做错了,因为经过一段时间后,有100个python.exe进程在运行.我花了一些时间重新进入服务器,我想测试为什么所
我正在研究远程桌面服务器,Windows XP Profesional.大约2小时前,numpy还在那里工作.我试图使用mulitprocessing.Pool()对一个for循环进行并行化,我一定做错了,因为经过一段时间后,有100个python.exe进程在运行.我花了一些时间重新进入服务器,我想测试为什么所有这些进程都已完成.但是,我遇到了以下错误:

>>> import numpy
Traceback (most recent call last):
  File "<stdin>",line 1,in <module>
  File "C:Python27libsite-packagesnumpy__init__.py",line 154,in <module>
    import add_newdocs
  File "C:Python27libsite-packagesnumpyadd_newdocs.py",line 9,in <module>

    from numpy.lib import add_newdoc
  File "C:Python27libsite-packagesnumpylib__init__.py",line 4,in <module
>
    from type_check import *
  File "C:Python27libsite-packagesnumpylibtype_check.py",line 8,in <modu
le>
    import numpy.core.numeric as _nx
  File "C:Python27libsite-packagesnumpycore__init__.py",line 45,in <modu
le>
    from numpy.testing import Tester
  File "C:Python27libsite-packagesnumpytesting__init__.py",in <mo
dule>
    from unittest import TestCase
ImportError: cannot import name TestCase

我可以导入unittest.py,但我无法导入TestCase:

>>> import unittest
>>> from unittest import TestCase
Traceback (most recent call last):
  File "<stdin>",in <module>
ImportError: cannot import name TestCase

我从Eclipse运行python与从命令行运行它有同样的问题.但是,当使用不同的Python(也是2.7,但是32位)时,它确实有效.

我首先尝试重新安装numpy,但这并没有解决问题.我发现的唯一其他解决方案是the answer到this question.但是,我查看并删除了所有unittest.py文件,我仍然遇到同样的问题.我不知道下一步该尝试什么.

解决方法

(从评论中移动)

显然,.pyc文件可能会过时.引用
http://nedbatchelder.com/blog/201310/finding_stale_pyc_files.html:

Recently I was debugging one of those “it can’t happen” kinds of
problems,and wanted to make sure I didn’t have any stale .pyc files
lying around.

因此,首先要尝试检查输入的确切内容:print(unittest .__ file__).你已经检查过它在工作目录中不是一个杂散的unittest.py.好.如果它是.pyc文件,只需尝试删除它.没有任何伤害,它会在您下次导入时重新生成.

我承认我对“为什么”的问题没有明智的答案.如果有任何比我更有知识的人可以回答它,我很乐意upvote并删除这个答案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读