Skip to main content
 首页 » 编程设计

Python乘法范围

2025年05月04日13www_RR

我需要获取从范围 (15,20,1) 派生的数字列表,如果每个数字都是 15*x*100:

X   Y 
15  100 
16  93,75 
17  88,2352941176 
18  83,3333333333 
19  78,9473684211 
20  75 

结果应该是一个包含两位小数的 y 数组。

我尝试使用 python,花了一段时间才发现它只能处理整数。然后我尝试了 numpy,但我仍然没有到达那里。我是个小问题,很抱歉这个问题很愚蠢,但在尝试了两个小时后,我决定发布一个问题。

最好的, 狼牙棒

请您参考如下方法:

你需要这样的东西吗:

ylist = [float(x)*15*100 for x in range(15,21)] 

?

这将返回:

[22500.0, 24000.0, 25500.0, 27000.0, 28500.0, 30000.0] 

我不太确定您的 Y 列是什么意思,因为您的公式 15*x*100 不会生成这些值。

如果你的意思是 x*100/15,那将是:

ylist = [15/float(x)*100 for x in range(15,21)] 

或者更简单:

ylist = [15.0/x*100.0 for x in range(15,21)] 

如果计算中的所有值都是int 类型,python 将创建一个int 作为结果。另一方面,如果其中一个是 float 或 double,那将是结果的类型。

这种强制转换既可以使用 float(x) 显式完成,也可以简单地将您的常量之一表示为浮点值,例如 100.0。

至于需要2位小数,这取决于你需要对这些值做什么。

一种方法是使用 round 保留 2 位小数,例如:

ylist = [round(15.0/x*100.0, 2) for x in range(15,21)] 

如果您总是需要两位小数,您可能想要使用字符串格式,请查看@mgilson 的回复。