[Python-Dev] 2to3 porting HOWTO: setup.py question

R. David Murray rdmurray at bitdance.com
Sun Jul 22 15:08:48 CEST 2012


On Sun, 22 Jul 2012 11:21:38 +0300, anatoly techtonik <techtonik at gmail.com> wrote:
> http://docs.python.org/py3k/howto/pyporting.html#during-installation
> 
> What's the point in making implicit Python 3 check here:
> try:  # Python 3
>   from distutils.command.build_py import build_py_2to3 as build_py
> except ImportError:  # Python 2
>   from distutils.command.build_py import build_py
> 
> instead of explicit check like:
> import sys
> if sys.version_info[0] >= 3:
>     from distutils.command.build_py import build_py_2to3 as build_py

It's called testing for the thing that actually matters, rather than
testing a constant with a much broader meaning.  Yes, in this case the
results are the same, but IMO it is better programming practice to test
the thing that actually matters when you can.

--David


More information about the Python-Dev mailing list