[Python-Dev] Python 3 as a Default in Linux Distros (original) (raw)

Laurent Gautier lgautier at gmail.com
Thu Jul 25 12:41:35 CEST 2013


On 07/25/2013 11:45 AM, Maciej Fijalkowski wrote:

On Wed, Jul 24, 2013 at 7:22 PM, Laurent Gautier <lgautier at gmail.com> wrote:

On 07/24/2013 06:30 PM, Chris Angelico wrote:

On Thu, Jul 25, 2013 at 2:21 AM, Laurent Gautier <lgautier at gmail.com> wrote:

- errors that are typical of "Python 2 script running with Python 3"-specific are probably limited (e.g., use of unicode, use of xrange, etc...)

The most common, in interactive scripts at least, is likely to be:

print "Hello, world!" SyntaxError: invalid syntax How helpful it's possible to make that one, I don't know. Is it safe to presume that it's more likely a syntax error will come from an interpreter version mismatch than a code bug? The wrapper in /usr/bin/python: - could use what is in 2to3. I think that most of the cases are solved there. - whenever interactive, could have an intermediate layer between the input in the console and execution. So you suggest that instead of a clear SyntaxError you should end up with a confusing error (something has no attribute xyz or so) after a while (if say somone tries to load twisted via 2to3).

In a sense, yes.

I think that the a priori (expectations) a user has plays a role in whether something is confusing or not. Consider the two following situations:

Having that said, the comments are pointing out that this is may be not a completely good idea (most notably because of how slow 2to3 is). A wrapper producing an unconditional warning about the default python being changed to Python 3, and differences between Python 2 and Python 3 the possible source of errors, (as I think it was suggested) is going to be a better idea.



More information about the Python-Dev mailing list