【问题标题】:python , I got this message in pycharm while coding as output :TypeError: can't convert type 'list' to numerator/denominatorpython,我在编码为输出时在pycharm中收到此消息:TypeError:无法将类型“列表”转换为分子/分母
【发布时间】:2021-05-17 08:24:43
【问题描述】:

我正在尝试评估列表中列表的平均值,代码如下:

from statistics import mean


lst = [[1,2,3],
  [4,5,6],
  [7,8,9]]

total_avg = mean(lst)
print("The average is ", round(total_avg ,2))

【问题讨论】:

  • 欢迎来到 SO。请发布完整的回溯错误。但是,快速浏览一下,mean() 函数需要一个值列表。你所拥有的是一个列表列表。我不认为mean 允许这样做。
  • 语言是什么?使用提供的标签。
  • 语言是什么?它是蟒蛇

标签: list average


【解决方案1】:

您收到错误是因为您尚未解压缩列表列表。你必须先把它拆开。 在您的代码中,mean() 函数的输入将是 [1,2,3],[4,5,6],[7,8,9],而不是 [1,2,3,4,5,6,7,8,9]

import statistics

lst = [[1,2,3],
  [4,5,6],
  [7,8,9]]

lst = [item for sublist in lst for item in sublist]

total_avg = statistics.mean(lst)
print("The average is ", round(total_avg ,2))

【讨论】:

  • 好的,谢谢你的评论,我会试试的
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-10
  • 1970-01-01
相关资源
最近更新 更多