AttributeError: 'module' 对象没有属性 'testmod' Python doctest

Joh*_*ann 7 windows macos doctest python-2.7

当我尝试在 python 中进行 doctest 时,基本上是每当我运行代码时

if __name__ =="__main__":
   import doctest
   doctest.testmod()
Run Code Online (Sandbox Code Playgroud)

我从口译员那里得到了这个答复

AttributeError: 'module' 对象没有属性 'testmod'

我可以很好地运行此代码,但是每当我在 Windows 机器上运行它时,它都不起作用。

我的机器运行的是 Windows,他们的机器是 OS X,但运行的是 python 2.7.5。

谢谢 :)

And*_* K. 8

确保您没有尝试将测试文件另存为doctest.py. 上面建议的打印语句将显示它。如果文件名是doctest.py,则重命名它并重试。


ash*_*bar 2

看起来有一个不同的模块doctest正在导入,而不是标准模块。

要准确找出正在导入的模块,只需添加以下内容print

if __name__ =="__main__":
   import doctest
   print doctest.__file__  # add this
   doctest.testmod()
Run Code Online (Sandbox Code Playgroud)

应该print会生成类似于 的内容C:\Python27\lib\doctest.pyc,具体取决于您使用的 Python 的位置和版本。任何其他输出都意味着您导入了错误的模块,并解释为什么会出现错误。