从 .txt 文件中读取数据并在 Python 中计算平均值

Posted

技术标签:

【中文标题】从 .txt 文件中读取数据并在 Python 中计算平均值【英文标题】:Reading data from .txt file and calculating mean in Python 【发布时间】:2020-07-11 05:10:25 【问题描述】:

我对我的 Python 代码有疑问。 我想从.txt 文件中读取数据并计算这些值的平均值。 .txt文件的格式为(1纵列):

1.36
5.5
6.11
12.05
25.8
38.28

我写的代码是:

 from statistics import mean

 with open('inputdata.txt','r') as fin:
     data=fin.read().split('\n')
     for index in range(len(data)):
         average=mean(float(index))

  print(average)

我使用了上面的代码,但是在命令窗口中显示了以下消息:

if iter(data) is data:
TypeError: 'float' object is not iterable

谁能帮帮我?

【问题讨论】:

如果我执行此命令窗口会显示:TypeError: can't convert type 'str' to numerator/denominator 遍历data 并对每个数字进行浮点运算;将整个事情传递给mean - average = mean(float(n) for n in data) 现在可以了!!!非常感谢!!! 【参考方案1】:

您可以通过用“\n”分割来创建一个值列表并将这些值转换为浮点数,然后您可以使用统计数据的平均值计算该列表的平均值:

from statistics import mean

with open('inputdata.txt','r') as fin:
    data=[float(x) for x in fin.read().split('\n')]

average = mean(data)
print(average)

【讨论】:

口头解释对您的回答很有帮助

以上是关于从 .txt 文件中读取数据并在 Python 中计算平均值的主要内容,如果未能解决你的问题,请参考以下文章

Python从txt文件中逐行读取数据

从多个文件中读取大数据并在python中聚合数据的最快方法是啥?

Python从文件中读取数据

Python如何从文件读取数据

Python从文件中读取数据

Python从txt文件中逐行读取数据