python - working out the mean from a csvfile already containing names -


import operator import csv question= input("are student or teacher: ") if question=="student" or "s" or "student":    print("you using wrong program. please use arithmetic quiz") elif question=="teacher" or "t" or "teacher":    print("hello , welcome program lets see students' scores in arithmetic quizes")     form=input("what form want view results of? 1,2 or 3?")     if form=="1":        print("if want data sorted names in alphabetical order")        print("enter 1, if want data sorted scores highest to")        print("lowest enter 2, if want data sorted average score")        teachermenu=input("highest lowest enter 3:")        if teachermenu=="1":           start=csv.reader(open("form1.csv"), delimiter=";")           datasorted= sorted(start, key=operator.itemgetter(0))           data= open("form1.csv","r")           eachline in datasorted:              eachline.sort()              print(eachline)           data.close()       elif teachermenu=="2":          data= open("form1.csv")          start=csv.reader(data)          line in start:             scores = (line[1:5])             scores.sort(reverse = true)             print(scores)       elif teachermenu=="3":          studentsaverages=[]          data= open("form1.csv")          start=csv.reader(data)          line in data:              numbers=(line[2:4])              numbers=list(map(int, numbers))              mean= round(sum(numbers)/len(numbers))              data.append(mean)              data.sort(reverse=true)              print(studentsaverages) 

in code working out of mean doesnt work , dont know why have tried several times doesnt seem work other parts of code work working out of mean doesnt e.g. putting highest lowest works , putting names in alphabetical order

if understand correct trying do, need append , sort mean studentsaverages variable(after loop) instead of data. example:

elif teachermenu=="3":    studentsaverages=[]    data = open("form1.csv")    start=csv.reader(data)    line in data:       numbers=(line[2:4])       numbers=list(map(int, numbers))       mean = round(sum(numbers)/len(numbers))       studentsaverages.append(mean)    studentsaverages.sort(reverse=true)    print(studentsaverages) 

Comments