Python doctest示例失败

时间:2010-10-04 09:23:33

标签: python doctest

这可能是一个愚蠢的问题。

我正在尝试使用python doctest,我尝试运行this示例

结尾
if __name__ == "__main__":
    import doctest
    doctest.testfile("example.txt")

我已将“example.txt”放在与包含示例代码的源文件相同的文件夹中,但是我收到以下错误:

Traceback (most recent call last):
File "test_av_funktioner.py", line 61, in <module>
doctest.testfile("example.txt")
File "C:\Python26\lib\doctest.py", line 1947, in testfile
text, filename = _load_testfile(filename, package, module_relative)
File "C:\Python26\lib\doctest.py", line 219, in _load_testfile
return open(filename).read(), filename
IOError: [Errno 2] No such file or directory: 'example.txt'

我可以以某种方式告诉/设置doctest模块搜索指定文件的位置吗?

1 个答案:

答案 0 :(得分:3)

Doctest默认搜索相对于调用模块的目录(但您可以覆盖它)。

引用doctest.testfile的文档:

  

可选参数module_relative指定如何解释文件名:

     
      
  • 如果module_relative True (默认值),则filename指定与操作系统无关的模块相对路径。默认情况下,此路径相对于调用模块的目录;但是如果指定了package参数,那么它与该包相关。为确保操作系统独立性,filename应使用/个字符来分隔路径段,并且可能不是绝对路径(即,它可能不以/开头。)
  •   
  • 如果module_relative False ,则filename指定特定于操作系统的路径。路径可以是绝对的或相对的;相对路径是根据当前工作目录解析的。
  •