[Python-de] Kennt eine Funktion ihren Namen?

Martin v. Loewis martin at v.loewis.de
Fri Feb 15 01:00:46 EST 2002


"Robert Rottermann" <robert at redcor.ch> writes:

> ich möchte eine funktion "überladen", d.h. ssie unter verschiedenen
> Namen aufrufen. Je nach Namen soll ein parameter anders gesetzt
> sein.

Das geht so nicht. Ein Objekt (beispielsweise eine Funktion) kann
unter verschiedenen Namen gebunden sein; es handelt sich jedoch stets
um das gleiche Objekt.

> def sprache(lang='ge'):
>   print lang
> 
> franz = sprache
> 
> franz() sollte "fr" ausgeben.
> 
> Kann ich das machen (und wie).

Ich empfehle

franz = lambda:return sprache('fr')

oder

def franz():
  return sprache('fr')

Ciao,
Martin



More information about the Python-de mailing list