LU04.L04 - Filtere Studenten nach Noten

def filter_students_by_grade(students):
    """
    Nutze eine List Comprehension, um Studenten zu filtern, deren Note kleiner als 4.0 ist.
 
    Parameters:
    - students (list): Liste der Studenten und ihrer Noten.
 
    Returns:
    - list: Liste der gefilterten Studenten.
    """
    return [student for student in students if student[1] < 4.0]
    # oder: return [(name, grade) for name, grade in students if grade < 4.0]
 
 
if __name__ == '__main__':
    students = [
        ('Alice', 4.0),
        ('Bob', 3.5),
        ('Charlie', 4.25),
        ('David', 5.5),
        ('Manuel', 3.75)
    ]
    result = filter_students_by_grade(students)
    print(result)

In dieser Musterlösung:

  1. Die Funktion filter_students_by_grade nimmt eine Liste von Studenten und ihren Noten als Eingabe und verwendet eine List Comprehension, um die Studenten zu filtern, deren Note kleiner als 4.0 ist.
  2. Die List Comprehension [(name, grade) for name, grade in students if grade < 4.0] führt die folgenden Schritte aus:
    • Sie geht durch jede Tupel (name, grade) in der Liste students.
    • Sie überprüft, ob die Note (grade) kleiner als 4.0 ist.
    • Wenn ja, wird das Tupel (name, grade) zur Liste der gefilterten Studenten hinzugefügt.
  3. Schließlich gibt die Funktion die Liste der gefilterten Studenten zurück, und das Ergebnis wird mit print ausgegeben.

© Kevin Maurizi

  • modul/m323/learningunits/lu04/loesungen/comprehensions2.txt
  • Zuletzt geändert: 2024/03/28 14:07
  • von 127.0.0.1