Il 20/06/2011 17:48, Fabio Giudici ha scritto: > Salve, > ho appena iniziato a studiare Python, utilizzo il manuale: "Pensare da > informatico, Imparare con Python" però avrei dei dubbi e vorrei dei > chiarimenti su alcuni punti. > Questi argomenti poco chiari a me sono: il comando raw_input, > l'incapsulamento e la generalizzazione...
Hai letto la documentazione della funzione raw_input? Dall'interprete puoi anche fare: >>> help(raw_input). La funzione è chiamata raw_input, perchè esiste una funzione chiamata input che non solo legge una stringa dallo standard input, ma la valuta pure (di nuovo, leggi la documentazione, insieme a quella della funzione eval). La funzione input viene spesso sconsigliata per motivi di sicurezza, dato che può eseguire codice arbitrario; http://web.archiveorange.com/archive/v/5H3d1E9kZP30yPTGM5EV Per quanto riguarda l'incapsulamento, è un argomento lungo. Eccoti un assaggio: def make_counter(counter=0): # Adapted from ANSI Common Lisp example in chapter 6.5, page 108 def reset(): nonlocal counter counter = 0 return counter def stamp(): nonlocal counter counter = counter + 1 return counter return reset, stamp reset, stamp = make_counter() print (stamp(), stamp(), reset(), stamp()) Per incrementare il contatore, puoi solo utilizzare le funzioni esposte. Richiede Python 3.x. La generalizzazione è un argomento ancora più vasto... Ciao Manlio _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python