Forum
>>
Principianti
>>
Problema con liste e assegnazioni di variabili
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da igor marchesini |
2021-03-28 09:56:58 - Problema con liste e assegnazioni di variabili
|
Buongiorno,
sono alle prime armi con la programmazione in python, e non ho mai usato altri linguaggi. Mi sono bloccato su una partre di programma, ce probabilmente è una cavolata per chi conosce il linguaggio, ma non ho trovato soluzione leggendo qua e la e neanche nei manuali. La parte di programma che ho riportato sotto, fa si che l'utente inserisca un numero di dosaggi a piacimento; e fino a qui problemi non mi sembra di averne trovati, chiede i dosaggi che l'utente vuole inserire e successivamente li inserisce nella lista. l'inghippo mi viene a questo punto. All'inizio volevo che ogni dosaggio venisse scritto in una variabile, in teoria il programma dovrebbe "crearsi" x variabili come il numero di dosaggi inseriti: es: var1= dosaggi0 var2= dosaggi 1 var3= dosaggi 2 . ...ecc però ho visto che potrei accontentarmi anche di un print con: il dosaggio n°1 è dosaggi0 il dosaggio n°2 è dosaggi1 il dosaggio n°3 è dosaggi2 .....ecc PER TUTTI GLI ESEMPI DOPO DOSAGGI C'E' LA PARENTESI QUADRA CHE RACCHIUDE L'INDICE DELLA LISTA...NON ME LA PRENDE SUL MESSAGGIO cambiare il numero del dosaggio non è un problema, la cosa si complica quando in automatico deve prendere gli elementi della lista uno a uno in fila. mi sapreste indicare come posso fare? grazie in anticipo a chi troverà il tempo per rispondere e scusate il disturbo. print("Quanti dosaggi vuoi inserire?") dosint = input() dosnum = 1 dosaggi = [] for doscount in range(int(dosint)): print("Inserisci il dosaggio n°", dosnum) dosins = input() dosaggi.append(dosins) dosnum += 1 print("Dosaggi settati correttamente.") numdos = 1 for printdoscount in range(int(dosint)): print("Il dosaggio n°", numdos, "è", dosaggi [?]) numdos += 1 |
|
Scritto da Niccolo Bartolacelli |
2021-03-28 12:03:27 - Re: Problema con liste e assegnazioni di variabili
|
Ciao,
se ho capito bene il tuo problema è nello stampare gli elementi nella lista "dosaggi" in ordine. Se così fosse, per risolvere il tuo problema ti basta sostituire "range(int(dosint))" nel secondo ciclo for con "dosaggi", poiché in questo modo puoi stampare direttamente la variabile "printdoscount" (che a ogni iterazione assume un valore di quelli della lista), sostituendo "print("Il dosaggio n°", numdos, "è", dosaggi [?])" con "print("Il dosaggio n°", numdos, "è", printdoscount)" |
|
Scritto da igor marchesini |
2021-03-29 17:42:57 - Re: Problema con liste e assegnazioni di variabili
|
print("Quanti dosaggi vuoi inserire?") dosint = input() dosnum = 1 dosaggi = [] for doscount in range(int(dosint)): print("Inserisci il dosaggio n°", dosnum) dosins = input() dosaggi.append(dosins) dosnum += 1 print("Dosaggi settati correttamente.") numdos = 1 x=0 #ho aggiunto una variabile x che mi va a chiedere a dosaggi la posizione corretta. for printdoscount in range(int(dosint)): print("Il dosaggio n°", numdos, "è", dosaggi x) numdos += 1 x +=1 ho risolto mettendo una variabile X......grazie comunque.
--- Ultima modifica di igor marchesini in data 2021-03-29 17:43:36 --- --- Ultima modifica di igor marchesini in data 2021-03-29 17:43:51 --- |
|
Scritto da Niccolo Bartolacelli |
2021-03-29 19:21:29 - Re: Problema con liste e assegnazioni di variabili
|
Ciao,
scusa la domanda, sei sicuro di aver capito bene come funziona il ciclo for? perché nel tuo codice tu usi un contatore esterno al ciclo che incrementi manualmente: in questo modo il ciclo for prede un po' di significato, perché tu potresti benissimo usare la variabile "doscount" al posto della variabile "dosnum" nel primo ciclo e la viariabile "printdoscount" al posto della "x" nel secondo. Ti consiglio di andare a riguardarti il ciclo for, che secondo me è spiegato molto bene nella guida di HTML.it |
|
Scritto da igor marchesini |
2021-03-29 19:49:00 - Re: Problema con liste e assegnazioni di variabili
|
------
|
Pagina: 1
Esegui il login per scrivere una risposta.