前提
numpy配列をprintする場合、一行の文字数が一定数を超えると改行されます。
この文字数の制限を大きくすることはできるでしょうか。
ネットで関係する記述を見たような気もしますが、探せません(間違いかも?)。
ちなみにリスト配列ですと、この制限は無いようです。ただし、エディタにコピーでの確認ですが、spyderのコンソールではもう少し多い文字数で改行表示されます(この制限はspyderのせいかも知れません)
なお、文字列に変換してprintする方法は考えません。
実現したいこと
numpy配列をprintする場合、一行の文字数の制限を大きくすること
確認用ソースコード
python
1import numpy as np 2 3text1 = np.zeros(30).astype('int') 4text2 = np.array(range(30)) 5 6np.set_printoptions(threshold=20) #この文にあまり意味がありません 7 8print("case1") 9print(text1) 10print(text2) 11 12print("case2") 13print(text1,end='') 14print() 15print(text2,end='') 16print() 17 18np.set_printoptions(threshold=30) #この文にあまり意味がありません 19print("case3") 20print(text1) 21print(text2) 22 23print("case4") 24print(text1,end='') 25print() 26print(text2,end='') 27print() 28 29lary1 = [0 for x in range(30)] 30lary2 = [x for x in range(30)] 31lary3 = [10000*x for x in range(30)] 32 33print("list") 34print(lary1) 35print(lary2) 36print(lary3)
試したこと
コンソール出力
runfile('C:/book/KERAS/untitled1.py', wdir='C:/book/KERAS')
case1
[0 0 0 ... 0 0 0]
[ 0 1 2 ... 27 28 29]
case2
[0 0 0 ... 0 0 0]
[ 0 1 2 ... 27 28 29]
case3
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
24 25 26 27 28 29] #この部分の改行制限を広げたい
case4
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
24 25 26 27 28 29] #この部分の改行制限を広げたい
list
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29]
[0, 10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000, 100000, 110000, 120000, 130000, 140000,
150000, 160000, 170000, 180000, 190000, 200000, 210000, 220000, 230000, 240000, 250000, 260000, 270000, 280000,
290000]
注:最後の場合、投稿用にコンソールと同じ位置で改行を挿入しています。

回答1件
あなたの回答
tips
プレビュー