python:仅附加';0';

python:仅附加';0';,python,Python,大集合返回[0,0,0,0,0,0,0,0……,0] 这是错误的,因为我选中了i,它是>0 我做错了什么?如果总和是一个整数(总和等于多少?), python似乎使用整数除法 尝试使用i/float(总和)。可能与浮点除法有关 i可能小于sum_total,它在整数除法中返回0 100*0等于0 试着把它铸造成浮子。试试这个 请注意,/在Python2中截断,因此您可能希望使用 big_set = [100*i/sum_total for i in results_histogram_total

大集合返回
[0,0,0,0,0,0,0,0……,0]

这是错误的,因为我选中了
i
,它是
>0


我做错了什么?

如果总和是一个整数(总和等于多少?), python似乎使用整数除法


尝试使用i/float(总和)。

可能与浮点除法有关

i可能小于sum_total,它在整数除法中返回0

100*0等于0

试着把它铸造成浮子。

试试这个

请注意,
/
在Python2中截断,因此您可能希望使用

big_set = [100*i/sum_total for i in results_histogram_total]

在Python2.x中,使用
from\uuuuu future\uuuu导入除法
来获得合理的除法行为。

当我需要浮点除法时,它总是x/float(y);但是由于int和float不是对象,所以它们没有类,但它们确实有一个类型,可以使用say type(x)@Dan进行测试,int是type
int
,float是type
float
——类型是类。整数和浮点数都是对象!或者尝试从未来导入部门获取准确的结果
big_set = [100*i/sum_total for i in results_histogram_total]
big_set = [100.0*i/sum_total for i in results_histogram_total]