Je voudrais construire un prototype en tant que tel:Liste de construction dans la définition de la fonction Python
def foo(a,t=([0]*len(a))):
print t
Pour des raisons qui ne sont pas importantes pour le moment. Je passe des arguments de liste de longueur variable à. Cependant, Python sous Linux 2.7.10 revient toujours comme suit:
>>> a = [1,2,3,4]
>>> foo(a)
[O, 0]
Sans l'appel de fonction, rien de tout cela se comporte d'une manière inattendue. Qu'est-ce qui se passe qui fait que Python pense toujours que la liste passée est de longueur 2 lors de l'assignation de variable dans foo()?
haut et fort, merci – errolflynn