Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #32913

Re: [Python-ideas] sys.py3k

References <CAPkN8xL1Hh72_cur91xTPVcyxMLzMVPpZcUp_oumUFKhMZZTDg@mail.gmail.com> <5096ED46.20502@pearwood.info> <CAHVvXxSJ1wP8+VK1gZP5cyCL9Xr9iu209DeQWgGAOo4AmZ6UZQ@mail.gmail.com> <20121105063008.GA14836@ando> <CAPkN8xLbr1Xn+m_LWw92KKrVB5K7AeZs_+Ju9CZq0Q=yG-5wSA@mail.gmail.com>
Date 2012-11-08 10:14 +1100
Subject Re: [Python-ideas] sys.py3k
From Chris Angelico <rosuav@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.3401.1352330078.27098.python-list@python.org> (permalink)

Show all headers | View raw


On Thu, Nov 8, 2012 at 5:35 AM, anatoly techtonik <techtonik@gmail.com> wrote:
> I thought of sys.py3k check as an explicit way to guard the code that should
> be maintained extra carefully for Python 3 compatibility, so that you can
> grep the source for this constant and remove all the hacks (such as bytes to
> string conversion) required to maintain the compatibility when the time
> comes to switch.

I agree about greppability, it's a huge help. Hence the code comment;
as long as you're consistent and you pick a keyword long enough or
unusual enough to not occur anywhere else, you can easily do a "find
across files" or "grep XYZ *" to find them all. And if you put the
comment on the most significant line of code, line-based tools will be
more useful.

# Unideal:
# py3k
try:
    reload
except NameError:
    from imp import reload

# Better:
try: # py3k
    reload
except NameError:
    from imp import reload

# Best:
try:
    reload # py3k
except NameError:
    from imp import reload

# Also best:
try:
    reload
except NameError:
    from imp import reload # py3k

Taking just the line with the keyword "py3k" on it will tell you
exactly what that file is doing.

ChrisA

Back to comp.lang.python | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Re: [Python-ideas] sys.py3k Chris Angelico <rosuav@gmail.com> - 2012-11-08 10:14 +1100
  Re: [Python-ideas] sys.py3k Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2012-11-07 23:56 +0000
    Re: [Python-ideas] sys.py3k Chris Angelico <rosuav@gmail.com> - 2012-11-08 11:06 +1100

csiph-web