3

2 つの 1001x1 配列の完全な内容を印刷しようとしていますが、Python では次のような切り捨てられた出力しか得られません。

array([[5,45],
       [1,23],
       ......,
       [1,24],
       [2,31]])  

完全な配列の代わりに。

完全な 1001x1 アレイを取得する方法の解決策を誰か教えてもらえますか?

4

2 に答える 2

6

NumPy チュートリアルの「配列の印刷」セクションを参照してください。

配列が印刷するには大きすぎる場合、NumPy は自動的に配列の中央部分をスキップし、角だけを印刷します。

>>> print(np.arange(10000))
[   0    1    2 ..., 9997 9998 9999]

...

この動作を無効にして NumPy に配列全体を印刷させるには、set_printoptions を使用して印刷オプションを変更できます。

>>> np.set_printoptions(threshold=nan)

このnp.set_printoptions関数は NumPy ライブラリの一部です。

于 2010-12-24T22:55:13.560 に答える
0

次のような簡単なステートメントを試したと思います。

print myarray

...次のようなより明示的なものではなく:

for each_item in myarray:
    print each_item

... あるいは:

print ', '.join([str(x) for x in myarray])

出力が省略されている理由は、おそらく、配列の「合理的な」デフォルト文字列表現を提供しようとするメソッドをクラスにnumpy実装しているためです。おそらく、単純なステートメントは主にデバッグ、ロギング、または同様の目的で使用され、結果のレポート、または他のプロセスまたはストレージへの結果のマーシャリングは、データに対するより明示的な反復を使用して行われると想定しています (私がここに示したように)。_str_arrayprint

于 2010-12-24T23:05:15.950 に答える