Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

aggiungere elementi ai dizionari

restante.giuseppe (2480 points)
7 32 49
in Programmare in Python by (2.5k points)
closed by

Buonasera a tutti,
volevo sapere se esistesse qualcosa come il .append() oppure +=[n] per i dizionari

qualcosa di differente da questo:

d = {}
d2 = {}
d2 = {chiave : testo}
d.update(d2)

è un po' orrendo...

3.2k views
closed with the note: answered

2 Answers

LeonardoEmili (35740 points)
14 65 155
by (35.7k points)

Ciao!
Tranquillo, la soluzione non è poi così difficile o diversa dalla tua!

Crea un dizionario, anche vuoto va bene. Per aggiungere un elemento a un dizionario (quindi una chiave ed un valore, eventualmente quest'ultimo può anche essere una stringa vuota) puoi utilizzare il comodissimo metodo utilizzato con le liste, ovvero diz[key] = value.

Finito!  L'unica accortezza ricordati di passagli delle stringhe come chiavi proprio perché essendo immutabili non creeranno problemi in futuro al tuo dizionario. Riassumendo ti basta fare diz["stringa"] = valore.

Buon code!

Leonardo Emili

m
matteo.chiari (3650 points)
2 17 30
by (3.7k points)
Ciao, la chiave non deve essere per forza una stringa. Può tranquillamente essere anche un intero se necessario
restante.giuseppe (2480 points)
7 32 49
by (2.5k points)
Grazie mille!
restante.giuseppe (2480 points)
7 32 49
by (2.5k points)
Ma esiste un modo per indicare l' "indice" dove mettere k:valore?
Per esempio aggiungerlo alla fine o all'inizio
m
matteo.chiari (3650 points)
2 17 30
by (3.7k points)
Se stiamo parlando dei dizionari no, dato che sono collezioni disordinate. Le coppie chiave:valore al loro interno non hanno indici ordinati come le liste, ma sono reperibili solo tramite la loro chiave
restante.giuseppe (2480 points)
7 32 49
by (2.5k points)
ok grazie mille!
andrea.sterbini (207940 points)
756 1270 2377
by (208k points)
Basta che la chiave sia "hashabile" ... ovvero un oggetto immutabile
LeonardoEmili (35740 points)
14 65 155
by (35.7k points)
Perdona per aver impiegato tanto a risponderti, ma sono stato impegnato con gli HW fino ad adesso! :D
Comunque come ti hanno già detto non puoi indicare l'indice, puoi tuttavia se hai la chiave assegnare a questa un valore. Accedi alla chiave tramite diz[key] = valore, come ha detto il professore ricorda di inserire una chiave hashable.
m
matteo.chiari (3650 points)
2 17 30
by (3.7k points)
Ciao,

puoi fare così:
 

diz[chiave] = valore

oppure

diz[chiave].append(valore)