Python,numpy,分段答案变得圆润

时间:2017-10-24 06:52:38

标签: python numpy piecewise

我对numpy.piecewise的输出有疑问。

我的代码:

e=110
f=np.piecewise(e,[e<120,e>=120],[1/4,1])
print(f)

结果我得到: 0 而不是所需的0.25

有人可以解释一下,为什么片断似乎在回答我的答案? 有没有办法解决这个问题?

e=110
f=np.piecewise(e,[e<120,e>=120],[1,4])/4
print(f)

非常感谢提前

2 个答案:

答案 0 :(得分:0)

来自np.piecewise docs

  

输出与x

的形状和类型相同

整数输入,整数输出。如果需要浮点输出,则需要传递一个浮点数:

e = 110.0

此外,如果您使用的是Python 2,1/4已经只是0,因为它是Python 2上的分区,因此您需要编写类似于1.0/4.0或仅0.25

答案 1 :(得分:0)

在你的代码中,1/4产生的int值为0.使用<div *ngFor="let image of images"> <p-galleria [images]="images" panelWidth="500" panelHeight="313"></p-galleria> </div > 将产生浮点值。

float(1)/4