[Python] Fwd: Cosa sbaglio
enrico franchi
enrico.franchi a gmail.com
Lun 30 Maggio 2016 22:51:21 CEST
2016-05-30 21:16 GMT+01:00 Piacenza Federico <piacenza.federico a gmail.com>:
> Aiutatemi per favore, proprio non capisco cosa sbaglio.
>
E' una faq... leggiti la PEP8. Detto questo, secondo me devi chiarirti come
funziona l'assegnamento (e il passaggio di parametri) in Python...
0. cosa stampa esattamente (ovvero, quante volte stampa 'called g') questo
programma?
def g():
print 'called g'
return []
def f(b=g()):
b.append(1)
g()
g()
1. secondo te cosa fa
a = []
b = a
a.append(1)
print b
2. secondo te cosa fa
def f(b):
b.append(1)
a = []
f(a)
print a
3. cosa fa
a = []
def f(b=a):
b.append(1)
f(a)
print a
4. perche' 3 dovrebbe essere diverso da 2?
5. perche' 3. dovrebbe essere diverso da
def f(b=[]):
b.append(1)
f()
... eh... non so come fartelo printare (senza cambiare l'eserczio o fare
dei magheggi che non vuoi vedere).
Beh, dai, se siamo arrivati fin qui... sappiamo che l'oggetto che e' stato
passato ad f quando l'abbiamo invocata (senza argoment) sara' [1, ].
E guarda 0...
--
.
..: -enrico-
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20160530/8d4ee543/attachment.html>
Maggiori informazioni sulla lista
Python