Re: Pep 3105: the end of print?



Steven D'Aprano wrote:
On Tue, 20 Feb 2007 00:44:24 +0000, Peter mayne wrote:

Steven D'Aprano wrote:
If Python 3 dropped the print
statement and replaced it with official_print_function(), how would that
help you in your goal to have a single code base that will run on both
Python 2.3 and Python 3, while still using print?
Is there any reason why official_print_function isn't sys.stdout.write?

Why would you want a convenience function like print to take one import,
three look-ups and 16 characters instead of always available, one look-up
and five characters?

Because it's compatible between Python 2.x and Python 3.x? :-)
Because without print as a keyword, I can say "print = sys.stdout.write"
and still have (some) convenience? (Albeit still one import and one
lookup, though given the probable time taken to do the I/O, why worry
about the lookup?) Or, if your editor has an abbreviation facility like
Eclipse, you can type sys.stdout.write with less than 5 keystrokes.

I can't remember the last time I used print in actual code (apart from short-lived debugging lines), so I'm bewildered as to why print seems to be so important.

print is important for the convenience, for short-lived debugging, and for
use in the interactive interpreter.

Why use print in the interactive interpreter? Just type the expression.

Hmm, I was expecting that that wouldn't always work, but:

>>> x=3
>>> if x==3: x
....
3
>>> for i in range(x):
.... i
....
0
1
2

PJDM
.



Relevant Pages

  • Re: Pep 3105: the end of print?
    ... Python 2.3 and Python 3, ... three look-ups and 16 characters instead of always available, ... short-lived debugging lines), so I'm bewildered as to why print seems to ...
    (comp.lang.python)
  • Re: PEP 3131: Supporting Non-ASCII Identifiers
    ... identifiers in Python. ... Because when I am reading source code, even if a particular variable *name* is a sequence of characters that I cannot identify as a word that I know, I can at least spell it out using Latin characters, or perhaps even attempt to pronounce it. ... people who use Python learn the 52 upper/lowercase variants of the latin alphabet. ...
    (comp.lang.python)
  • Re: break unichr instead of fix ord?
    ... I think the best feature of python is not, ... property that a Unicode literal always produces one ... differently" by producing two python characters. ... "surrogate pairs". ...
    (comp.lang.python)
  • Re: UTF-8 / German, Scandinavian letters - is it really this difficult?? Linux & Windows XP
    ... For string literals, with the "coding" declaration, Python will accept ... "coding" declaration to produce a Unicode object which unambiguously ... represents the sequence of characters - ie. something that can be ... > strings and/or gibberished characters in Tk GUI title? ...
    (comp.lang.python)
  • Re: String prefix question
    ... along with how Python deals with this: ... characters to show for the upper 128. ... To solve this problem, Unicode was created. ... front of the string declaration ...
    (comp.lang.python)

Loading