Python Numpy 控制檯完全輸出ndarray的實現
阿新 • • 發佈:2020-02-20
如下所示:
import numpy as np np.set_printoptions(threshold=np.nan) print(ndarray)
當ndarray裡面的存放的資料維度過大時,在控制檯會出現不能將ndarray完全輸出的情況,中間部分的結果會用省略號打印出來。這時就需要用到numpy裡面的set_printoptions()方法。
set_printoptions(precision=None,threshold=None,edgeitems=None,linewidth=None,suppress=None,nanstr=None,infstr=None,formatter=None)
precision:輸出結果保留精度的位數
threshold:array數量的個數在小於threshold的時候不會被摺疊
edgeitems:在array已經被摺疊後,開頭和結尾都會顯示edgeitems個數
formatter:這個很有意思,像python3裡面str.format(),就是可以對你的輸出進行自定義的格式化
其他的暫時沒用到
舉例:
precision: np.set_printoptions(precision=4) print(np.array([1.23456789])) >> [ 1.2346] # 最後進位了
threshold: np.set_printoptions(threshold=10) print(np.arange(1,11,1)) # np.arange(1,1)生成出來是[1-10],10個數 >> [ 1 2 3 4 5 6 7 8 9 10] np.set_printoptions(threshold=9) print(np.arange(1,1)) >> [ 1 2 3 ...,8 9 10]
edgeitems: np.set_printoptions(threshold=5) print(np.arange(1,8 9 10] np.set_printoptions(threshold=5,edgeitems=4) print(np.arange(1,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是一個可呼叫的字典,'all'是其中一個key,表示裡面的x可以包含所有type,還有其他key,具體可以在原始碼裡面檢視
最後如果只想在程式碼中的某一部分使用自定義的printoptions,那麼可以通過再次呼叫np.set_printoptions()這個方法來進行reset
以上這篇Python Numpy 控制檯完全輸出ndarray的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。