kant80
Profilo di
Nome | kant80 |
---|---|
Indirizzo email | n/a |
Messaggi | 4 |
-
- 2022-02-13 18:24:33
- Re: Esercizio su Cicli While e For
- Forum >> Principianti
- Ok, allora mi tocca aspettare di imparare e di dovervi ancora disturbare.
A presto e buona domenica, ma soprattutto grazie di tutto
-
- 2022-02-12 16:07:49
- Re: Esercizio su Cicli While e For
- Forum >> Principianti
- Ciao Daniele,
quando sono tornato a casa ho subito sistemato il codice seguendo i tuoi suggerimenti ed alla fine ho scritto questo:
mylist = [] while True: val = input("Inserisci un numero: ") try: int(val) mylist.append(int(val)) except ValueError: try: float(val) mylist.append(float(val)) except ValueError: if val == str(val) != 'fatto': print('Non hai inserito un numero valido') if val == 'fatto': break print('Fatto') print(len(mylist), sum(mylist), sum(mylist)/len(mylist))
Il risultato è quello che desideravo, grazie mille (conoscevo la funzione sum() e mi ero scordato l'esistenza di len()); vorrei chiederti solo un'ultima cosa, hai accennato al fatto che tu lo avresti scritto in modo più sintetico, come?
Faccio questa domanda perché sono un principiante (mooooolto principiante ed autodidatta, come ti ho scritto sto seguendo quella guida di cui al primo post) quindi con le tue dritte sulle correzioni apportate al mio script e con i tuoi suggerimenti per scrivere in modo più stringato spero di imparare velocemente.
Grazie mille di tutto, scusa il disturbo e soprattutto buon fine settimana.
-
- 2022-02-11 21:24:39
- Re: Esercizio su Cicli While e For
- Forum >> Principianti
- Ciao Daniele,
intanto ti ringrazio per la risposta e perdonami per il casino che ho combinato, ecco il codice "sistemato" (sperando nel modo giusto):
while True: number = input('Enter a number:') mylist = [] try: if number == float(number): continue except: if number == str(number) != 'done': print('Invalid data') if number == 'done': break count = 0 for itervar in mylist: count = count + 1 total = 0 for itervar in mylist: total = total + itervar print(count, total, total/count)
Sicuramente ci saranno parecchi (se non troppi) errori, ma a me manca come memorizzare i valori che inserisco in 'mylist' per poi conteggiarli e sommarli.
Perdonatemi ancora per il mio errore da principiante e soprattutto perché continuerò ancora a farne, e vi pregherei di aiutarmi a migliorare.
Un abbraccio ed un ringraziamento a tutti, a presto (spero)
P.S.: per non sbagliare ho caricato anche il file.py
-
- 2022-02-10 19:48:50
- [Risolto] Esercizio su Cicli While e For
- Forum >> Principianti
- Salve a tutti,
sono un principiante (ma moooolto principiante) su Python, per imparare questo linguaggio mi sto basando momentaneamente sul libro in pdf "Python per tutti - Esplorare dati con Python 3" (di Charles R. Severance) e sono arrivato al Capitolo 5 sui Cicli.
Il mio problema nasce nell'Esercizio 1:
Scrivi un programma che legga ripetutamente i numeri fino a quando l’utente non digiti “finito”. Una volta che viene digitato “finito”, dovrà essere visualizzato il totale, il conteggio e la media dei numeri. Se l’utente dovesse digitare qualcosa di diverso da un numero, occorrerà rilevare l’errore usando try e except, visualizzare un messaggio di errore e passare al numero successivo.
Enter a number: 4
Enter a number: 5
Enter a number: bad data
Invalid input
Enter a number: 7
Enter a number: done
16 3 5.333333333333333
io ho compilato questa parte di programma per l'inserimento dei numeri:
while True:
number = input('Enter a number:')
mylist = []
try:
if number == float(number):
continue
except:
if number == str(number) != 'done': print('Invalid data')
if number == 'done':
breaksiccome vorrei proseguire con il seguente listato:count = 0
for itervar in [3, 41, 12, 9, 74, 15]:
count = count + 1
total = 0
for itervar in [3, 41, 12, 9, 74, 15]:
total = total + itervar
print(count, total, total/count)come posso aggiungere sistematicamente i valori che inserisco in mylist = [] e sostituirli in [3, 41, 12, 9, 74, 15]?Ringrazio anticipatamente per il vostro splendido aiuto
--- Ultima modifica di kant80 in data 2022-02-13 18:25:06 ---