【问题标题】:Average of a list of numbers without sum function没有 sum 函数的数字列表的平均值
【发布时间】:2023-04-01 08:30:01
【问题描述】:

我想在不使用sum() 函数的情况下获取列表的平均值。这是我的代码:

sample_list = [2, 10, 3, 5]

sample_listSum =[sample_list[0]+ sample_list[1]+ sample_list[2]+ sample_list[3]]

sample_listLength = len(sample_list)

sample_listAvrage = sample_listSum / sample_listLength

print("This is result of list", sample_listAvrage)

但它不起作用,我可以请你帮助我吗?

【问题讨论】:

  • 你的 sample_listSum 是一个列表,这应该是一个值
  • sample_listSum =[sample_list[0]+ sample_list[1]+ sample_list[2]+ sample_list[3]] 更改为sample_listSum =sample_list[0]+ sample_list[1]+ sample_list[2]+ sample_list[3]

标签: python python-3.x list sum average


【解决方案1】:
>>> s = [2, 10, 3, 5]
>>> a = 0
>>> 
>>> for i in s:
...     a += i
... 
>>> print a
20
>>> mean = a / float(len(s))
>>> mean
5.0

【讨论】:

    【解决方案2】:

    您的第二行正在创建一个新列表,您需要删除括号

    sample_list = [2, 10, 3, 5]
    sample_listSum = sample_list[0] + sample_list[1] + sample_list[2] + sample_list[3]
    sample_listLength = len(sample_list)
    sample_listAvrage = sample_listSum / sample_listLength
    print("This is the result of list", sample_listLength)
    >> This is result of list 5.0
    

    【讨论】:

    • 非常感谢您的回答。为什么当我运行代码时我的结果是 4 而不是 5?
    • 我不确定,您使用的是哪个版本的 Python?
    • 我使用的是 python 3,当然我在 ubuntu 上运行代码就像这样 $python3 code.py
    【解决方案3】:

    去掉括号即可:

    sample_listSum = sample_list[0]+ sample_list[1]+ sample_list[2]+ sample_list[3]
    

    但是您也可以使用statistics.mean 计算它(它不是sum 函数):

    >>> import statistics
    >>> statistics.mean(sample_list)
    5
    

    【讨论】:

      【解决方案4】:

      我的新代码和正确答案:

      sample_list = [2, 10, 3, 5]
      
      x =[sample_list[0]+ sample_list[1]+ sample_list[2]+ sample_list[3]]
      
      b = len (sample_list)
      
      avrage = x / b
      
      print("This is result of list", avrage)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-12-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-13
        • 1970-01-01
        相关资源
        最近更新 更多