断言打印数组的函数

时间:2016-09-22 19:33:10

标签: python arrays assert assertion

我正在尝试测试此功能

def print_board(M):
    for i in range (M.shape[0]):
        line=''
        for j in range (M.shape[1]):
           line+=str(int(M[i,j]))
        print(line)

我创建了一个新文件来测试它并导入了我的文件和函数数组但是我不太确定如何测试它因为我没有返回它,我试过这个:

assert(print_board(array([[1,1,1],[0,0,0],[1,1,1]],dtype='bool')) == '''111 000 111''')

但得到了

  

的AssertionError

1 个答案:

答案 0 :(得分:-1)

你可以做的是将Python标准输出(打印发送它)重定向到字符串,然后比较该字符串。

有关如何操作的说明,请参阅this question