Prev: Dynamic text color
Next: Any Swisses here?
From: JKPeck on 1 Jan 2010 10:41 The gettext module uses the convention of defining a function named "_" that maps text into its translation. This conflicts with the automatic interactive interpreter assignment of expressions to a variable with that same name. While if you are careful, you can avoid that assignment while debugging, and you can choose a different function for gettext, this conflict is a nuisance. I am looking for a way to suppress the expression assignment to _ or to change the name of the variable assigned to. Is this possible? Using Python 2.6. TIA, Jon Peck
From: Peter Otten on 1 Jan 2010 12:06 JKPeck wrote: > The gettext module uses the convention of defining a function named > "_" that maps text into its translation. > This conflicts with the automatic interactive interpreter assignment > of expressions to a variable with that same name. > > While if you are careful, you can avoid that assignment while > debugging, and you can choose a different function for gettext, this > conflict is a nuisance. I am looking for a way to suppress the > expression assignment to _ or to change the name of the variable > assigned to. Is this possible? Using Python 2.6. $ cat displayhook.py import sys import __builtin__ as builtin def displayhook(obj): if obj is not None: builtin._last_result = obj print repr(obj) sys.displayhook = displayhook $ python -i displayhook.py >>> 42 42 >>> _ Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name '_' is not defined >>> _last_result 42
From: JKPeck on 1 Jan 2010 13:53 On Jan 1, 10:06 am, Peter Otten <__pete...(a)web.de> wrote: > JKPeck wrote: > > The gettext module uses the convention of defining a function named > > "_" that maps text into its translation. > > This conflicts with the automatic interactive interpreter assignment > > of expressions to a variable with that same name. > > > While if you are careful, you can avoid that assignment while > > debugging, and you can choose a different function for gettext, this > > conflict is a nuisance. I am looking for a way to suppress the > > expression assignment to _ or to change the name of the variable > > assigned to. Is this possible? Using Python 2.6. > > $ cat displayhook.py > import sys > import __builtin__ as builtin > > def displayhook(obj): > if obj is not None: > builtin._last_result = obj > print repr(obj) > > sys.displayhook = displayhook > $ python -i displayhook.py>>> 42 > 42 > >>> _ > > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > NameError: name '_' is not defined>>> _last_result > > 42 Thanks. It's just what I needed. -Jon Peck
From: Gabriel Genellina on 4 Jan 2010 03:51 En Fri, 01 Jan 2010 15:53:31 -0300, JKPeck <jkpeck(a)gmail.com> escribi�: > On Jan 1, 10:06 am, Peter Otten <__pete...(a)web.de> wrote: >> JKPeck wrote: >> > The gettext module uses the convention of defining a function named >> > "_" that maps text into its translation. >> > This conflicts with the automatic interactive interpreter assignment >> > of expressions to a variable with that same name. >> >> $ cat displayhook.py >> [...] > > Thanks. It's just what I needed. In case you didn't know, look at sitecustomize.py and the PYTHONSTARTUP [2] environment variable. They allow for the above code to be automatically executed. [1] http://docs.python.org/library/site.html#index-549 [2] http://docs.python.org/using/cmdline.html#envvar-PYTHONSTARTUP -- Gabriel Genellina
|
Pages: 1 Prev: Dynamic text color Next: Any Swisses here? |