Function args

Jean-Michel Caricand jean-michel.caricand at laposte.net
Fri Apr 9 02:33:47 EDT 2004


Bonjour Michel et merçi pour la réponse très rapide. Je tiens à préciser que
nous développons en interne
en langage Perl. Ma question peut donc sembler bête pour des programmeurs
Python.

Après maintes recherches, je n'ai pas trouvé d'exemples me permettant de
comprendre le mécanisme employé
par Python pour passer un simple nombre à une fonction et le modifier
réellement.

Imaginons que je veuille écrire une fonction qui permute deux variables,
j'écris :

def permuter(a,b):
  c = b
  b = a
  a = c

Si tout est objet, donc passé par référence a et b devraient être réellement
modifier ? Pourtant ce n'est pas le cas.

Pourriez simplement me donner un exemple pour cette fonction. Encore merçi

"Michel Claveau/Hamster" <No.Spam.mc at No.Spam.mclaveau.No.Spam.com> a écrit
dans le message de news: c55f5r$f2l$1 at news-reader4.wanadoo.fr...
> Bonjour !
>
> En Python, les variables sont des sortes de pointeurs sur des objets. Tout
> passage de variable comme paramètres se fait forcément par référence (en
> fait, on passe la référence à l'objet).
> De plus l'affectation d'une variable crée un autre objet, car la plupart
des
> objets ne sont pas modifiables.
>
> Seuls le sont les listes et les dictionnaires sont modifiables. Une chaîne
> de caractères n'est pas modifiable non plus.
>
> Cependant, il existe des modules contenant d'autres types ayant des
> comportement différents. Il est également possible de définir ses propres
> classes, dont on (re)-définira le comportement.
>
>
>
> PS : il existe aussi un newsgroup   fr.comp.lang.python
>
>
>
> @-salutations
> --
> Michel Claveau
> mél : http://cerbermail.com/?6J1TthIa8B
> site : http://mclaveau.com
>
>





More information about the Python-list mailing list