问题要求在未知列表中输出负整数的十进制比例。所需的答案是0.500000(小数点后6位),但我的程序仅输出0.5。如何保持5个终端零?
我尝试使用round(number, ndigits)
库中的getcontext().prec
函数和Decimal
。所有这些仅产生了0.5。
def plusMinus(arr):
from decimal import getcontext, Decimal
getcontext().prec = 6
negamt = 0
posamt = 0
zeroamt = 0
for i in arr:
if i < 0:
negamt += 1
elif i > 0:
posamt += 1
else:
zeroamt += 1
print(Decimal(posamt)/Decimal(n), Decimal(negamt)/Decimal(n), Decimal(zeroamt)/Decimal(n))
未知数组的预期结果为0.500000、0.333333、0.166667;我的程序返回0.5、0.333333、0.166667。
答案 0 :(得分:1)
您要更改打印格式。如果希望小数点后六位数字,则可以使用以下格式字符串:
>>> print('{:1.6f}'.format(0.5)})
0.500000