Magazine

python et les *

Publié le 29 avril 2008 par Mikebrant

Etoile des neiges, mon coeur amoureux

Mais que nenni !
Vous pouvez sortir le champagne !

En fait, sur certains protptypes de fonctions vous pouvez apercevoir ceci:

maFonction(monArg1,monArg2,...,*monArgument2,**monArgument3)

Certains arguments possèdent des étoiles .
Qu'est-ce que ca veut dire ?


*monArgument2 va recevoir un tuple qui contient tous les arguments passés en paramètres,après le/les arguments déclarés dans le prototype de la fonction (monArgument,monArgu,..).

**monArgument3 quant à lui va recevoir sous forme de dictionnaire les arguments qui suivent.Bien sûr pour distinguer la fin du tuple et le début du dictionnaire il faut que ces arguments aient une forme particulière: maCle=maValeur ( arguments avec étiquettes) .

C'est pourquoi il faut positionner *monArgument2puis **monArgument3  après tous les arguments.

Un bon petit exemple pour clôturer ce billet.

#-*- coding:Utf-8 -*-
def maMethode(argument,*argument1, **argument2):
  
   print("##### L'argument simple #####")
   print argument  
   print("##### Le tuple #####")
   for arg in argument1:
   print arg
  
   print("##### Le Dico #####")
   for cle,valeur in argument2.items():
   print str( cle ) + ' : ' + str( valeur )
   print("##### Fin #####")
if __name__=='__main__':
   maMethode('un','deux','trois',Qui='saura',Dis='lui')


Retour à La Une de Logo Paperblog

A propos de l’auteur


Mikebrant 9 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte