【发布时间】:2018-11-19 04:23:54
【问题描述】:
这是一个非常简单的问题,但我不知道 Google 的正确用词。我有一个 numpy 数组:
A = np.array([ 8.1588e-01, -3.9675e-04])
我想将它打印为普通的十进制数字。那是0.81588, -0.00039675。
你怎么能这样做?
【问题讨论】:
-
好吧,
A在这种情况下不是一个 numpy 数组
这是一个非常简单的问题,但我不知道 Google 的正确用词。我有一个 numpy 数组:
A = np.array([ 8.1588e-01, -3.9675e-04])
我想将它打印为普通的十进制数字。那是0.81588, -0.00039675。
你怎么能这样做?
【问题讨论】:
A 在这种情况下不是一个 numpy 数组
Numpy 让您使用set_printoptions 全局自定义输出。
要摆脱科学记数法,您可以使用:
np.set_printoptions(suppress=True) # don't use scientific notation
来自文档:
抑制:bool,可选
如果为 True,则始终使用定点表示法打印浮点数,在这种情况下,当前精度为零的数字将打印为零。如果为 False,则当最小数的绝对值 1e3 时使用科学计数法。默认为 False。
【讨论】:
set_printoptions 将是要使用的函数,但您的示例调用都不会产生问题中给出的所需输出。
suppress 的截断行为与您的问题不同,无论您希望使用什么截断行为,您都不太可能找到一种方便的方法来获取它。