[Python-Dev] displayhook behavior in pdb

Georg Brandl g.brandl at gmx.net
Wed Sep 16 11:53:48 CEST 2009

May I have a short vote on this issue:


In short, pdb (since 2.6) uses a separate displayhook in order to avoid
_ being reassigned (which screws up debugging apps that use _ as gettext).
In that displayhook, I did not add the suppression of printing None, as
it can be confusing to look at variables and get no output:

(Pdb) foo
(Pdb) bar

(You could argue that this is what the "p" command is for though.)

Now in Python 3, where print is a function, if you call print in a loop
(e.g. to debug a list or dictionary, as it is advertised in the pdb docs
under the "alias" command), the output has the printed values interspersed
with "None"s.

Now, what is the lesser evil?


Thus spake the Lord: Thou shalt indent with four spaces. No more, no less.
Four shall be the number of spaces thou shalt indent, and the number of thy
indenting shall be four. Eight shalt thou not indent, nor either indent thou
two, excepting that thou then proceed to four. Tabs are right out.

More information about the Python-Dev mailing list