Questi sono 3 dts che ho creato ciascuno con le 4 stesse chiavi ma, naturalmente, valori diversi.Fare un ciclo attraverso un elenco che contiene dicts e visualizzarlo in un certo modo
lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
}
Ho memorizzato le carte in una lista.
students = [lloyd, alice, tyler]
Quello che mi piacerebbe fare è scorrere l'elenco e visualizzare ogni modo:
"""
student's Name: val
student's Homework: val
student's Quizzes: val
student's Tests: val
"""
Stavo pensando un ciclo for sarebbe fare il trucco for student in students:
e ho potuto memorizzare ogni in un vuoto dict current = {}
ma dopo questo è dove mi perdo. Stavo per usare getitem ma non pensavo che avrebbe funzionato.
Grazie in anticipo
Questi dizionari sono fondamentalmente una classe da poveri. Se hai familiarità con le classi di Python e la programmazione orientata agli oggetti, potresti creare una classe 'Student' con un metodo' transcript' (o semplicemente sovrascrivere il metodo magico '__str__'). Dovresti quindi stampare 'student.transcript()' o 'str (studente)' in a 'per studente negli studenti:' loop. (Se la prossima funzione o programma che gestirà tali dati si aspetta comunque un 'dict', lascia i dati in un' dict'.) –
ChrisSlightGhost do keys l'ordine di stampa è importante per te? –