Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I need help with python coding. I have my code written out, I just need the user

ID: 3706692 • Letter: I

Question

I need help with python coding. I have my code written out, I just need the user to be prompted to enter the number of students. I can not figure out how to make it so that its not only bound to 2 students, there needs to be the option for it to be a list of the amount of students that are entered. Here is my code.

def inputGrades(number_of_students):
# This is 2D list
grade_list = []

# Iterate loop for number of students
for i in range(number_of_students):
lst = []

# Ask user to enter 6-digit number
student_number = int(input('Enter 6-digit student number for student ' + str(i + 1) + ': '))

# If number is not 6 digit, keep asking user to enter a valid value
while (student_number < 100000 or student_number > 999999):
student_number = int(input('Enter 6-digit student number for student ' + str(i + 1) + ': '))

# Append student number to lst
lst.append(student_number)

# Iterate loop for 10 assignment scores
# Add scores to lst
for i in range(1, 11):
g = float(input('Enter grade for assignment ' + str(i) + ': '))
lst.append(g)

# Add this lst to grade_list
grade_list.append(lst)
print()

# Return lst
return grade_list


def printLlist(grade_list):

# For each grade in grade_list
# Print student number
for grade in grade_list:
print("%-8d" % (grade[0]), end="")

# For 10 assignments, print scores
for i in range(1, len(grade)):
print("%-7.2f" % (grade[i]), end="")
print()


def minimum_value(grade_list):
min_list = []

# For number of assignments
for col in range(1, 11):

# Set minvalue to be score of first student
minval = grade_list[0][col]

# Iterate loop for each row in grade_list
for row in range(0, len(grade_list)):

# If minval > grade_list[row][col]
# Set minval = grade_list[row][col]
if minval > grade_list[row][col]:
minval = grade_list[row][col]
# Add this minval to min_list
min_list.append(minval)

# Return min_list
return min_list


def maximum_value(grade_list):
max_list = []

# For number of assignments
for col in range(1, 11):
# Set maxvalue to be score of first student
maxval = grade_list[0][col]
# Iterate loop for each row in grade_list
for row in range(0, len(grade_list)):
# If maxval > grade_list[row][col]
# Set maxval = grade_list[row][col]
if maxval < grade_list[row][col]:
maxval = grade_list[row][col]
# Add this maxval to min_list
max_list.append(maxval)

return max_list

def totalScore(grade_list):
total_list=[]
total =0

# For each row in list
for row in range(0, len(grade_list)):
# For each column in each row
# Add value to total
# Append total to total_lsit
for col in range(1,len(grade_list[row])):
total+=grade_list[row][col]
total_list.append(total)
total = 0
return total_list

if __name__ == '__main__':

grade_list = inputGrades(2)
print('Student Numbers and scores:')
printLlist(grade_list)

print()
print('Minimum scores:',minimum_value(grade_list))
print('Maximum scores:',maximum_value(grade_list))
print('Total: ',totalScore(grade_list))

  

Explanation / Answer

def inputGrades(number_of_students): # This is 2D list grade_list = [] # Iterate loop for number of students for i in range(number_of_students): lst = [] # Ask user to enter 6-digit number student_number = int(input('Enter 6-digit student number for student ' + str(i + 1) + ': ')) # If number is not 6 digit, keep asking user to enter a valid value while (student_number < 100000 or student_number > 999999): student_number = int(input('Enter 6-digit student number for student ' + str(i + 1) + ': ')) # Append student number to lst lst.append(student_number) # Iterate loop for 10 assignment scores # Add scores to lst for i in range(1, 11): g = float(input('Enter grade for assignment ' + str(i) + ': ')) lst.append(g) # Add this lst to grade_list grade_list.append(lst) print() # Return lst return grade_list def printLlist(grade_list): # For each grade in grade_list # Print student number for grade in grade_list: print("%-8d" % (grade[0]), end="") # For 10 assignments, print scores for i in range(1, len(grade)): print("%-7.2f" % (grade[i]), end="") print() def minimum_value(grade_list): min_list = [] # For number of assignments for col in range(1, 11): # Set minvalue to be score of first student minval = grade_list[0][col] # Iterate loop for each row in grade_list for row in range(0, len(grade_list)): # If minval > grade_list[row][col] # Set minval = grade_list[row][col] if minval > grade_list[row][col]: minval = grade_list[row][col] # Add this minval to min_list min_list.append(minval) # Return min_list return min_list def maximum_value(grade_list): max_list = [] # For number of assignments for col in range(1, 11): # Set maxvalue to be score of first student maxval = grade_list[0][col] # Iterate loop for each row in grade_list for row in range(0, len(grade_list)): # If maxval > grade_list[row][col] # Set maxval = grade_list[row][col] if maxval