在 .txt python 中计算一些平均值
Calculate some averages in .txt python
我有一个名为 ecc.txt
的 .txt
文件。它包含 8000 多行数字。我想计算该文件中每 360 行的平均值。
这是代码:
import math
f = open(r'ecc.txt').read()
data = []
for line in data:
sum = 0
for i in range (len(data)):
if i % 360 != 0:
sum = sum + ecc[i]
else:
average = sum / 360
print(average)
sum = 0
当我运行它时,什么也没有发生。我没有得到任何结果。代码只是 运行 并且没有任何结果结束。
这段代码有问题吗?
谢谢。
您的代码可以进行一些更改:
import math
data=[]
with open(r'ecc.txt') as f:
for i in f:
data.append(int(i))
for line in data:
sum = 0
for i in range (len(data)):
if i%360 !=0:
sum = sum + ecc[i]
else:
average = sum/360
print(average)
sum=0
不过请注意,此代码不包含每个第 360 个元素的值(我想这不是求平均值的问题)而且您也没有最后一个元素的平均值
avg_dict = {}
with open('ecc.txt') as f:
data = f.read().split(' ')
sum = 0
i = 0
for str_number in data:
sum += int(str_number)
i += 1
if i % 360 == 0:
avg_dict[i] = sum/360
sum = 0
我假设您的文件文本有一个空的 space 作为分隔符。否则,您可以在 split 方法中更改 sep 值。如果没有分隔符更改数据为:
data = list(f.read())
我有一个名为 ecc.txt
的 .txt
文件。它包含 8000 多行数字。我想计算该文件中每 360 行的平均值。
这是代码:
import math
f = open(r'ecc.txt').read()
data = []
for line in data:
sum = 0
for i in range (len(data)):
if i % 360 != 0:
sum = sum + ecc[i]
else:
average = sum / 360
print(average)
sum = 0
当我运行它时,什么也没有发生。我没有得到任何结果。代码只是 运行 并且没有任何结果结束。
这段代码有问题吗? 谢谢。
您的代码可以进行一些更改:
import math
data=[]
with open(r'ecc.txt') as f:
for i in f:
data.append(int(i))
for line in data:
sum = 0
for i in range (len(data)):
if i%360 !=0:
sum = sum + ecc[i]
else:
average = sum/360
print(average)
sum=0
不过请注意,此代码不包含每个第 360 个元素的值(我想这不是求平均值的问题)而且您也没有最后一个元素的平均值
avg_dict = {}
with open('ecc.txt') as f:
data = f.read().split(' ')
sum = 0
i = 0
for str_number in data:
sum += int(str_number)
i += 1
if i % 360 == 0:
avg_dict[i] = sum/360
sum = 0
我假设您的文件文本有一个空的 space 作为分隔符。否则,您可以在 split 方法中更改 sep 值。如果没有分隔符更改数据为:
data = list(f.read())