Nom de fonctions identiques

Document Actions
Réponses: 5   Visites: 0
Up one level
Vous devez être un membre enregistré pour contribuer sur ce forum. Inscrivez-vous maintenant

Nom de fonctions identiques

Posté par magicvinni le 27/08/2010 17:44
Bonjour,

A nouveau une question tordue ;) J'ai donc ma bibliothèque lycee pour mes élèves, dans mon éditeur (Pyscripter) j'ai une infobulle qui affiche l'aide sur la fonction tapée, comme je voulais traduire cela pour mes élèves, j'ai fait un truc du genre :
code:
import random as alea

....

def random():
    """
    Pas d'argument.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Renvoie au hasard un décimal dans l'intervalle[0;1[    """
    return alea.random()

et ça marche nickel, bon j'aurai pu traduire dans la bibliothèque random, mais je ne voulais pas faire de modifs dans les bibliothèques existantes. Bref, j'en viens à mon soucis, j'ai voulu faire la même chose avecrange, mais là, ça se complique, car range, ne vient pas d'un module (il me dit que ça vient de __builtin__). Avez-vous une idée de comment je pourrai traduire l'aide de range ?

Merci,
Vincent

Re: Nom de fonctions identiques

Posté par fredogo le 27/08/2010 18:03
Tu ne peux tout simplement pas, et ce que tu as fais précédemment est fortement déconseillé.

Comme il est déconseillé de mettre le nom de fonction dans des variables.

J'ai tenté avec une fonction lambda, mais ça ne fonctionne pas et je dirais que heureusement, il y aurait un sacré dysfonctionnement.

Le plus simple est quand même de modifier le nom de ta fonction.

Re: Nom de fonctions identiques

Posté par magicvinni le 28/08/2010 08:10
Se serait quand même dommage que juste pour avoir l'aide en français, il faille changer le nom de la fonction. Le but est de leur apprendre à programmer en python, si je commence à traduire toutes les mots clef, se ne sera plus du python :/
Merci quand même

Re: Nom de fonctions identiques

Posté par fredogo le 28/08/2010 09:10
exact. Comme toutes les bonnes doc sur python sont en anglais, vaut mieux leur apprendre les bases de l'anglais technique.

Un petit dictionnaire anglais-français, un glossaire informatique anglais-français et c'est parti.

Re: Nom de fonctions identiques

Posté par jacko le 03/09/2010 14:24
Bonjour,

magicvinni, ce que vous cherchez à faire est tout à fait légal. De plus, vous avez presque donné la solution.
Les fonctions built-in de Python sont localisées dans un module nommé "__builtin__". Il suffit donc d'importer ce module pour y avoir accès. Exemple :
code:
import __builtin__
def range(*args,**kw):
   "doc en français de range"
   return __builtin__.range(*args,**kw)

Voir d'ailleurs un autre exemple (avec open()) dans la doc du module __builtin__ (dans la doc standard Python).

Re: Nom de fonctions identiques

Posté par magicvinni le 06/09/2010 08:09
Merci beaucoup, ça marche parfaitment.
Vincent

Python.org : Le site officiel du langage Python.
Zope.org : Le site web officiel de Zope.
Daily Python-URL : Actus de l'univers Python.
Tribute to Zyons : Zyons notre ami et membre fondateur de l'Afpy, nous quittait en 2005.