2016-09-22 43 views
1

我想測試此函數斷言,打印陣列功能

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''') 

,但得到

Asse田

+0

他的功能對我來說太難了解他給我的這個答案,讓我把它應用到自己身上,對不起。 – Kabou

+0

你的猜測是正確的;因爲print_board沒有'return'語句,所以返回值是Python的'None'值。 – CAB

回答

-1

您可以做的是將Python標準輸出(打印發送給它)重定向到一個字符串,然後比較該字符串。

請參閱this question瞭解如何做到這一點的解釋。

+0

謝謝我會嘗試 – Kabou