2017-11-05 2 views
0

Ich habe 2 Felder, einige Schulfächer und 1 bis 5 Noten für diese Fächer. Ich brauche 4 zufällige Themen aus einem Array und 4 Zufallszahl (Klassen) zu jedem dieser Themen nehmen und Spalten erstellen müssen:Python - 2 Reihen zu 2 Spalten + Zufall + Durchschnitt

import random 
studentname = input("Write your name - ") 
studentage = input("Write your age - ") 
courses = ["English", "Mathematics", "Physics", "Chemistry", "Programming", "Biology", "Geography", "History"] 
grades = [1, 2, 3, 4, 5] 

for line in zip(random.sample(courses,4), random.sample(grades,4), random.sample(grades,4), random.sample(grades,4), random.sample(grades,4)): 
    print('{:15} {} {} {} {} - Average = \n'.format(*line)) 

enter image description here

Wie Sie eine durchschnittliche Anzahl fügen für jeden die Fächer?

Autor Anmerkungen:

Ich suchte wirklich alles, aber alles, was auch nur annähernd nicht finden, ich etwas mit ZIP() gefunden, aber ich bin neu in Python, konnte ich verwalten Spalten zu schaffen, aber konnte nichts über den Durchschnitt hinzufügen.

Antwort

1

Innerhalb Ihrer Schleife können Sie den Durchschnitt des Eingabetupels berechnen (den Namen des Kurses überspringen). Dann fügen Sie dieses Argument dem Format hinzu.

for line in zip(random.sample(courses,4), 
       random.sample(grades,4), 
       random.sample(grades,4), 
       random.sample(grades,4), 
       random.sample(grades,4)): 

    avg= sum(line[1:])/(len(line)-1) 
    print('{:15} {} {} {} {} - Average = \n {}'.format(*line,avg)) 
+0

Vielen Dank, Sie haben mich gerade gerettet. –