标题几乎总结了一下:我试图使用assertEqual来测试一个返回生成器对象的函数,但结果是:
AssertionError:生成器对象genexpr>在0x2e70c80>!=(1,2,...)
除了迭代函数并为每个输出运行assertEqual之外,还有一种聪明的方法吗?
Joh*_*ooy 15
assertEqual(tuple(generator_object), (1, 2, ...))
Run Code Online (Sandbox Code Playgroud)
如果它是一个无限的发生器,或者你只是想n
出于某种原因看第一个结果,你可以将它与之结合起来itertools.islice
assertEqual(tuple(islice(generator_object, n)), (1, 2, ...))
Run Code Online (Sandbox Code Playgroud)