Seems like people are very surprised to see "print >> None" defaulting to "print >> sys.stderr". I must confess that now that I'm looking at it and after reading the PEP, this change lacks some argumentation. In Python, this form surely looks & feels like the Unix cat /dev/null, that is, since None doesn't have a 'write' method, the print statement is expected to either raise an exception or be specialized for None to mean "the print statement has no effect". The deliberate choice of sys.stderr is not obvious. I understand that Guido wanted to say "print >> None, args == print args" and simplify the script logic, but using None in this case seems like a bad spelling <wink>. I have certainly carefully avoided any debates on the issue as I don't see myself using this feature any time soon, but when I see on c.l.py reactions of surprise on weakly argumented/documented features and I kind of feel the same way, I'd better ask for more arguments here myself. -- Vladimir MARANGOZOV | Vladimir.Marangozov@inrialpes.fr http://sirac.inrialpes.fr/~marangoz | tel:(+33-4)76615277 fax:76615252
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4