We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
Collections.namedtuple()
Collections.namedtuple()
Sort by
recency
|
1085 Discussions
|
Please Login in order to post a comment
from collections import namedtuple n=int(input())#number of students Student=namedtuple('Student',input())#read no.of column headers like ID,MARKS,NAME,CLASS marks=[]#empty list to collect marks for i in range(n): data=input().split()#read student details data=["1","97"] student=Student(*data)#create student object Student=Student("1","97") marks.append(int(student.MARKS))#take marks and store it in a list print(sum(marks)/n)
Something I learned while solving this is that namedtuples have a
._make
method that if the input string is in the same order as the namedtuple defintion string, it does the right thing:Enter your code here. Read input from STDIN. Print output to STDOUT
from collections import namedtuple n=input() student=namedtuple('student',input().split()) Students=[student(*input().split()) for _ in range(int(n))] print(round(sum(int(i.MARKS) for i in Students)/int(n),2))