浮点除法后存储零

时间:2018-09-11 00:45:02

标签: python-3.x

#!/bin/python3

import math
import os
import random
import re
import sys

# Complete the plusMinus function below.
def plusMinus(arr):
    p=0
    m=0
    z=0
    for i in arr:
        if i>0:
            p+=1
        elif i<0:
            m+=1
        else:
            z+=1
    a=[round((p/len(arr)),6),round((m/len(arr)),6),round((z/len(arr)),6)]
    print (a)
    return a

if __name__ == '__main__':
    n = int(input())

    arr = list(map(int, input().rstrip().split()))

    plusMinus(arr)

我刚刚在hackerrank中练习一些挑战。然后,预期结果为0.350000,但得出的值为0.35(精度为6)。我该怎么办?

1 个答案:

答案 0 :(得分:0)

在打印语句中指定精度:

print("{:0.6f}".format(a))

正如@ashgetstazered的注释中指出的那样,格式化的字符串更具可读性(在python> = 3.6中可用)

print(f"{a:.6f}")