2017-10-08 133 views
0

我正在使用jupyter筆記本。考慮ar = np.array([[2,3],[5,6]])命令在jupyter筆記本中重現評估命令

然後評估print ar顯示

[[2 3] 
[5 6]] 

,而只是評估ar顯示

array([[2, 3], 
     [5, 6]]) 

我的問題是:1)什麼命令實際上就在於這個評價在筆記本的後面,我怎麼可能重現它在一個正常的IDLE python腳本?

2)第二個評價是什麼意思,這是某種形式的精心策劃;確實向我展示了對象的類型及其內容?它不應該實際上是ndarray而不是array

回答

0

1)我認爲它比單個命令更復雜。我認爲解析哪個「交互模式」(例如,顯示全部,僅顯示最後一行[默認值])的代碼是here。請記住,IPython就像它自己的REPL shell一樣,並且有很多不同的交織機制,比如這個。你可以追溯他們的源代碼,並試圖理解所涉及的所有機制,如果你想,但我不認爲這是一個單線解決方案。

2)這是一個打印表示的arrepr(ar),相對於的ar可讀字符串形式。請參閱https://stackoverflow.com/a/2626364/7458681其原因是array而不是ndarray的原因在於,它不是正在打印的對象的類型,而是所需的功能,以便能夠重新創建對象,以便eval(repr(ar)) == ar

相關問題