這篇文章給大家分享的是有關(guān)Python Numpy控制臺完全輸出ndarray的實現(xiàn)示例的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供合水網(wǎng)站建設(shè)、合水做網(wǎng)站、合水網(wǎng)站設(shè)計、合水網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、合水企業(yè)網(wǎng)站模板建站服務(wù),十載合水做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。如下所示:
import numpy as np np.set_printoptions(threshold=np.nan) print(ndarray)
當(dāng)ndarray里面的存放的數(shù)據(jù)維度過大時,在控制臺會出現(xiàn)不能將ndarray完全輸出的情況,中間部分的結(jié)果會用省略號打印出來。這時就需要用到numpy里面的set_printoptions()方法。
set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, suppress=None, nanstr=None, infstr=None, formatter=None)
precision:輸出結(jié)果保留精度的位數(shù)
threshold:array數(shù)量的個數(shù)在小于threshold的時候不會被折疊
edgeitems:在array已經(jīng)被折疊后,開頭和結(jié)尾都會顯示edgeitems個數(shù)
formatter:這個很有意思,像python3里面str.format(),就是可以對你的輸出進(jìn)行自定義的格式化
其他的暫時沒用到
舉例:
precision: np.set_printoptions(precision=4) print(np.array([1.23456789])) >> [ 1.2346] # 最后進(jìn)位了
threshold: np.set_printoptions(threshold=10) print(np.arange(1, 11, 1)) # np.arange(1, 11, 1)生成出來是[1-10],10個數(shù) >> [ 1 2 3 4 5 6 7 8 9 10] np.set_printoptions(threshold=9) print(np.arange(1, 11, 1)) >> [ 1 2 3 ..., 8 9 10]
edgeitems: np.set_printoptions(threshold=5) print(np.arange(1, 11, 1)) >> [ 1 2 3 ..., 8 9 10] np.set_printoptions(threshold=5, edgeitems=4) print(np.arange(1, 11, 1)) >> [ 1 2 3 4 ..., 7 8 9 10]
formatter np.set_printoptions(formatter={'all': lambda x: 'int: ' + str(-x)}) print(np.arange(1, 5, 1)) >> [int: -1 int: -2 int: -3 int: -4]
這個formatter是一個可調(diào)用的字典,'all'是其中一個key,表示里面的x可以包含所有type,還有其他key,具體可以在源碼里面查看
最后如果只想在代碼中的某一部分使用自定義的printoptions,那么可以通過再次調(diào)用np.set_printoptions()這個方法來進(jìn)行reset
感謝各位的閱讀!關(guān)于“Python Numpy控制臺完全輸出ndarray的實現(xiàn)示例”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!