如何从python中找到.csv文件中特定单元格的平均值?

问题描述 投票:-4回答:1

所以基本上,我想从python中找到.csv文件中特定单元格的平均值。基本上,用户应该能够输入难度(简单,中等或难度),然后程序应该查找包含此输入难度的.csv中的行,然后在相同的行中找到分数的平均值。

例如,如果用户输入“Easy”,则程序应输出2.5作为平均分数(因为(2 + 3)/ 2为2.5)。

这是代码:

    file = open("Example.csv", "r")
    for line in file:
      details = line.split(",")
      which=input("Which topic would like? ")
      if which in details[2]:
        average = sum(details[0])/len(details[0])
        print(str(average))

这是.csv文件的文本:

2,Jo12,简单,地理

3,Ste11,简单,数学

5,Jo12,中,数学

3,Ste11,硬,地理

python csv
1个回答
0
投票

在您能够准确理解解释器如何处理代码之前,请先从纸张和铅笔开始,然后手动描述算法。

在这里,当第三列中的值等于用户询问的字符串时,您希望获得第一列中数字的平均值。以下是我如何描述这个过程:

  • 询问用户主题名称
  • 循环遍历csv文件的行 如果第三个字段的值不等于主题名称,则直接在下一行继续 其他 将值加起来值(initialy设置为0) 增加值的数量(初始设置为0)
  • 如果值的数量为0,则告诉用户未找到该主题
  • 否则平均值等于值的总和除以值的数量。

在您的代码是如上所示的工作算法的实现之前,您将无法获得预期的结果。目前你的代码接近无意义:-(

© www.soinside.com 2019 - 2024. All rights reserved.