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是typeint
,float是typefloat
——类型是类。整数和浮点数都是对象!或者尝试从未来导入部门获取准确的结果
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]