将 .txt 文件中的数字的平均数添加到我的代码中
Adding the mean average of numbers from a .txt file to my code
下面的代码完全可以正常工作,但是我想添加输入数字的平均数(存储在 .txt 文件中)。我想我必须将输入的值放在不同的行上,但我也不确定该怎么做。有没有简单的方法可以做到这一点?
myFile = open("C38test.txt","wt")
myFile.write(input("Enter numbers to put in a list, leave a space between each number. \n"))
myFile.close()
myFile = open("C38test.txt","rt")
contents = myFile.read()
user_list = contents.split()
for i in range(len(user_list)):
user_list[i] = int(user_list[i])
print("Sum = ",sum(user_list))
注意:这个问题非常类似于this问题。
一组值的平均值是所有值的总和除以值的数量。
我发现主要有两种方式:
方法一:使用sum
和len
函数
average = sum(user_list)/len(user_list)
,然后你可以用 int
类型的变量 average
做任何你想做的事
方法二:使用statistics
模块为您完成
在 Python 3.8+(适用于 float
s)
import statistics
average = statistics.fmean(user_list)
在 Python 3.4+
import statistics
average = statistics.mean(user_list)
不确定 add-on 将其放入文件中,但您可以这样做
with open("filename.txt", "w") as fout:
fout.write(str(average))
下面的代码完全可以正常工作,但是我想添加输入数字的平均数(存储在 .txt 文件中)。我想我必须将输入的值放在不同的行上,但我也不确定该怎么做。有没有简单的方法可以做到这一点?
myFile = open("C38test.txt","wt")
myFile.write(input("Enter numbers to put in a list, leave a space between each number. \n"))
myFile.close()
myFile = open("C38test.txt","rt")
contents = myFile.read()
user_list = contents.split()
for i in range(len(user_list)):
user_list[i] = int(user_list[i])
print("Sum = ",sum(user_list))
注意:这个问题非常类似于this问题。
一组值的平均值是所有值的总和除以值的数量。
我发现主要有两种方式:
方法一:使用sum
和len
函数
average = sum(user_list)/len(user_list)
,然后你可以用 int
average
做任何你想做的事
方法二:使用statistics
模块为您完成
在 Python 3.8+(适用于 float
s)
import statistics
average = statistics.fmean(user_list)
在 Python 3.4+
import statistics
average = statistics.mean(user_list)
不确定 add-on 将其放入文件中,但您可以这样做
with open("filename.txt", "w") as fout:
fout.write(str(average))