Hacker News new | ask | show | jobs
by nullflow 4196 days ago
Thanks for the reply.

Are there any guidelines or "best practices" for writing code for both 2.7 and 3.4?

2 comments

http://python-future.org/compatible_idioms.html

This is a pretty comprehensive guide. It does rely on the future lib, which is a wrapper around six and a few others to make it easier, but you can also just write your own minimal lib for things that need to have:

    if py2:
         pass # Py2 specific line here
    else:
         pass # Py3 stuff here
I think Django has chosen the approach of having their own minimal compatibility layer, iirc.
Here is Django's documentation, including notes on the compatibility stuff we ship:

https://docs.djangoproject.com/en/1.7/topics/python3/