Python小数点*easy*

Python小数点*easy*,python,Python,我现在觉得自己有点金发碧眼,但不知为什么我想不出如何解决这个问题 我们需要纠正这两个问题 使用//整数除法会弄乱平均值 另外,我需要使用format函数来获取2位小数 def视图分数(分数): def main(): 分数=[] 分数\文件=打开('scores.txt','r') line\u list=list(scores\u file.readlines()) scores\u file.close() i=0 而i

我现在觉得自己有点金发碧眼,但不知为什么我想不出如何解决这个问题

我们需要纠正这两个问题

  • 使用//整数除法会弄乱平均值
  • 另外,我需要使用format函数来获取2位小数

    def视图分数(分数):

    def main():

    分数=[]
    分数\文件=打开('scores.txt','r')
    line\u list=list(scores\u file.readlines())
    scores\u file.close()
    i=0
    而i
    main()


  • 最简单的选择是使用
    格式(分数,.2f')


    我也是Python新手

    对于“/”,我在ipython上进行了一次试验,对我来说,无论您使用//还是/

    • 使用“/”
    • 使用“/”
    • 您的请求的解决方案是
    对于两个决定性位置的问题,我从以下几点中学到了一些东西

    • 这对你的案子很有用-

    对于功能,您可能希望咨询谷歌

    • 我不擅长创建函数,但函数总是应该有“return”,因为python中的一切都是对象

    这是Python2和Python3行为不同的地方之一

    使用//整数除法会弄乱平均值

    Python 3:

    average = sum_scores / len(scores)
    
    print ('The average score now is {:.2f}'.format(average))
    
    Python 2:

    average = float(sum_scores) / len(scores)
    
    print ('The average score now is %.2f' % average)
    
    在这两种情况下,您都不想使用
    /

    另外,我需要使用format函数来获取2位小数

    Python 3:

    average = sum_scores / len(scores)
    
    print ('The average score now is {:.2f}'.format(average))
    
    Python 2:

    average = float(sum_scores) / len(scores)
    
    print ('The average score now is %.2f' % average)
    

    即使在每种方言中,也有多种解决方案。

    如果
    sum\u score
    是一个整数,则在将其除以整数之前将其设为浮点。用整数除法乱搞,你就会明白为什么了。不要用落地除法。不要忘记,您可以使用
    from\uuuuuu future\uuuuuu.import division
    使Python2的
    /
    操作符像Python3一样工作。