回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我一直试图计算.csv文件每行中第三、第四和第五个值的平均值,但我的程序只计算第一行,而不是每行。
例如,此代码:</p>
<pre><code>file=open("file.csv", "r")
data=csv.reader(file)
data=[[row[0],row[1],eval(row[2]),eval(row[3]),eval(row[4])] for row in data]
from statistics import mean
numbers=[row[2],row[3],row[4]]
newdata=[[row[0],row[1],mean(numbers)] for row in data]
sort=sorted(newdata,key=operator.itemgetter(2), reverse=True)
for eachline in sort:
print(eachline)
file.close()
</code></pre>
<p>…读取此文件:</p>
<pre><code>Phillip,Turner,1,4,10
Sarah,Connor,4,8,1
Alex,Grice,2,10,3
Cheesy,Wotsit,3,2,6
Chris,Mclaughlin,10,9,8
Alison,Humphries,4,2,6
</code></pre>
<p>产生了这样的结果:</p>
<pre><code>['Phillip', 'Turner', 4.0]
['Sarah', 'Connor', 4.0]
['Alex', 'Grice', 4.0]
['Cheesy', 'Wotsit', 4.0]
['Chris', 'Mclaughlin', 4.0]
['Alison', 'Humphries', 4.0]
</code></pre>