圆形函数不是四舍五入吗?
Round function isn't rounding?
我正在尝试创建一个基本均值函数,允许用户输入整数列表和 return 数据集的均值。注意事项之一是该程序应允许用户 select 他们希望将答案四舍五入到多少位小数。
下面的代码片段是我的 mean() 函数的内容,它以数字列表作为参数。
比如我输入[5, 3, 3, 2],想四舍五入到2位小数,应该是3.25,程序returns 3.0.
sum = 0
for item in lst:
sum += item
mean = round(float(sum / len(lst)), decimals)
print mean
在 Python2 中使用 /
如果两个参数都是整数,则将进行整数除法。因此,您想将 sum
转换为 float
.
mean = round(float(sum) / len(lst), decimals)
尽管如此,我要指出您不应该使用 sum
作为变量名,因为它会覆盖内置的 sum
。事实上,您实际上应该使用 sum
内置函数。
lst = [1, 2, 4]
mean = round(float(sum(lst)) / len(lst), 2)
print (mean) # 2.33
我正在尝试创建一个基本均值函数,允许用户输入整数列表和 return 数据集的均值。注意事项之一是该程序应允许用户 select 他们希望将答案四舍五入到多少位小数。
下面的代码片段是我的 mean() 函数的内容,它以数字列表作为参数。
比如我输入[5, 3, 3, 2],想四舍五入到2位小数,应该是3.25,程序returns 3.0.
sum = 0
for item in lst:
sum += item
mean = round(float(sum / len(lst)), decimals)
print mean
在 Python2 中使用 /
如果两个参数都是整数,则将进行整数除法。因此,您想将 sum
转换为 float
.
mean = round(float(sum) / len(lst), decimals)
尽管如此,我要指出您不应该使用 sum
作为变量名,因为它会覆盖内置的 sum
。事实上,您实际上应该使用 sum
内置函数。
lst = [1, 2, 4]
mean = round(float(sum(lst)) / len(lst), 2)
print (mean) # 2.33