每行不显示ndarray行

时间:2018-05-25 09:09:21

标签: python numpy formatting format numpy-ndarray

我有这段代码:

import numpy as np

M = np.matrix([[-4.41991030e-05,-9.27712599e-04,3.75797779e-04,4.11804326e-04,1.08815444e-04],
        [-3.58432112e-04,-6.11583291e-04,1.18565910e-03,4.10337098e-04,9.96854953e-05],
        [-1.36865905e-03,1.19013259e-03,1.62785645e-03,1.85052363e-04,6.73256050e-05],
        [-0.00292639,-0.0084904,-0.00337932,-0.00014984,0.0001385]])

print(M)

当我运行它时,尽管终端处于全屏模式,但每行分为两行:

enter image description here

即使我将它保存到文件中,也要使用这部分代码:

with open('file.txt', 'w') as f:
    for row in M:
        f.write(str(row))
        f.write('\n')

我遇到了同样的问题:

enter image description here

我尝试用不同的编辑器打开文件,但我的输出格式相同,所以我最终认为问题与文本编辑器无关,这就是我在这里发布问题的原因。 /> 这里有谁知道问题是什么?

1 个答案:

答案 0 :(得分:3)

numpy默认将最大线宽设置为75,您可以使用set_printoptions(linewidth = some_num)进行更改,请参阅docs

In[17]:
np.set_printoptions(linewidth=700)
M = np.matrix([[-4.41991030e-05,-9.27712599e-04,3.75797779e-04,4.11804326e-04,1.08815444e-04],
        [-3.58432112e-04,-6.11583291e-04,1.18565910e-03,4.10337098e-04,9.96854953e-05],
        [-1.36865905e-03,1.19013259e-03,1.62785645e-03,1.85052363e-04,6.73256050e-05],
        [-0.00292639,-0.0084904,-0.00337932,-0.00014984,0.0001385]])

print(M)

[[-4.41991030e-05 -9.27712599e-04  3.75797779e-04  4.11804326e-04  1.08815444e-04]
 [-3.58432112e-04 -6.11583291e-04  1.18565910e-03  4.10337098e-04  9.96854953e-05]
 [-1.36865905e-03  1.19013259e-03  1.62785645e-03  1.85052363e-04  6.73256050e-05]
 [-2.92639000e-03 -8.49040000e-03 -3.37932000e-03 -1.49840000e-04  1.38500000e-04]]