On Tuesday, September 19, 2017 at 1:31:52 PM UTC-5, bartc wrote: [...] > Can't you get around all those with things like > sys.stdout.write?
Yes. > If so, what was the point of having a discrete print > statement/function at all? I believe the original intent was to create a universal symbol for a "shortcut to sys.stdout.write". As you can imagine, if every programmer is required to implement their own version of print, not only is the wheel being re- invented, many unique symbols would be used, and Python code would be far less intuitive between authors. Furthermore, i don't believe print should have ever been expanded for use _outside_ of the most simple outputs. For instance: using print for advanced things like redirecting output is going beyond the scope of a special purpose shortcut. Finally, (and this is most important) i believe that when print() and input() are over-utilized, noobs, especially those who do not have an understanding of IO streams, fail to realize that print() and input() are just shortcuts to the more feature-rich objects living in the `sys` module. In fact, for a noob who begins programming with Python (especially when outside of a structured academic environment) they are likely to never make the connection, or, at least, not make the connection for a very long time. And being that IO streams are one of the fundamentals of programming, such a heavy reliance on shortcuts is harmful to the intellectual development of these students. -- https://mail.python.org/mailman/listinfo/python-list