Seite 1 von 1
wie kann man eine Instanz in built-in namespace hinzufügen?
Verfasst: Sonntag 4. Dezember 2005, 12:11
von Gast
Hallo!
ich habe beim Durchblättern gettext module ein interessantes gefunden, was ich schon langer gewünschte hätte: eigene Funktion in built-in namespace zu verschieben! def _(msg): return msg
Frage: kann ich eine Instanz/Klassenobjekt in built-in namespace platzieren, wenn Ja, dann wie?
Danke für den Tipp im voraus!
MfG
Boostpy
Verfasst: Sonntag 4. Dezember 2005, 12:24
von Leonidas
gettext Doku hat geschrieben:install( domain[, localedir[, unicode [, codeset]]])
This installs the function _ in Python's builtin namespace, based on domain, localedir, and codeset which are passed to the function translation(). The unicode flag is passed to the resulting translation object's install method.
Aber Funktionen im Namespace von hand zu definieren ist auch nicht schwer:
Code: Alles auswählen
# pseudocode
from gettext import _
# oder
_ = gettext._
Verfasst: Sonntag 4. Dezember 2005, 12:39
von Gast
Hi Leonidas!
stimmt, es kann mit install oder so wie dein Code die Funktion _() für gettext in built-in definieren. aber ich wollte eine Klasse oder Module in built-in namespace haben, was sollte ich tun, damit alle Scripte durch
import abc
#damit wird das gleich Modul in built-in namespace gesetzt!
import verwendet_abc_ohne_abc_zu_importieren
#sonst muss das obige Modul auch abc importieren/ bzw. Instanz erzeugen, oder Meine Idee ist irgendwie falsch?!
....
Verfasst: Sonntag 4. Dezember 2005, 13:28
von Leonidas
Ich glaube du suchst
das hier, aber das ist, wie du an der Diskussion siehst, nicht unumstritten. Deswegen macht das auch kaum jemand.
Verfasst: Sonntag 4. Dezember 2005, 14:08
von Gast
Leonidas, danke! Genau mit deiner Hilfe wird gefunden! Naja, es ist nicht so optimal, aber es kann mir viel Ärger sparen
