Die Toolbox wird geladen...
Die Toolbox wird geladen...
Prüfe Pendel, Rechner und Gravitations-Sandbox mit denselben Aufgaben. Eine Auswertung trennt Funktionsfehler von optischen Eindrücken.
Das passende Video ansehenEin nachvollziehbarer Modellvergleich mit Testbelegen und drei getrennten Teilnoten.
README.md3,1 KBAUFGABEN.md3,3 KBbewertung.csv0,3 KBauswerten.py2,6 KBtest_auswertung.py1,2 KBEin Ausschnitt aus dem Paket. Die vollständige Datei liegt im ZIP.
auswerten.pyAusschnitt
"""Aggregate manually verified coding trials without network access."""
import argparse
import csv
import math
from collections import defaultdict
from pathlib import Path
def summarize(path: Path) -> str:
groups: dict[str, list[tuple[int, int, float, float]]] = defaultdict(list)
seen: set[tuple[str, str, str]] = set()
designs: dict[str, set[tuple[str, str, int]]] = defaultdict(set)
with path.open(encoding="utf-8-sig", newline="") as handle:
reader = csv.DictReader(handle)
required = {"candidate", "task", "run", "passed", "total", "usability_0_5", "rework_minutes", "evidence"}
if not required.issubset(reader.fieldnames or []):
raise ValueError("CSV-Spalten fehlen")
for line, row in enumerate(reader, 2):
key = (row["candidate"].strip(), row["task"].strip(), row["run"].strip())