Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python 2 vs Python 3

Pablo E
March 20, 2014

Python 2 vs Python 3

Lightning talk at Python Bcn Meetup, Beginners session about differences between Python 2 vs. Python 3

Pablo E

March 20, 2014
Tweet

More Decks by Pablo E

Other Decks in Technology

Transcript

  1. { "author": "Pablo Enfedaque", "twitter": "@pablitoev56"} > December 1989: Guido

    Van Rossum starts Python implementation > January 1994: Version 1.0 released > October 2000: Version 2.0 released > December 2008: Version 3.0 released > June 2009: Version 3.1 released > July 2010: Version 2.7 released with backports > 2014: Latest versions were 2.7.6 and 3.4 > January 2017: Current versions are 2.7.13 and 3.6.0, versions <2.7 and 3.0 - 3.2 are deprecated Python versions
  2. { "author": "Pablo Enfedaque", "twitter": "@pablitoev56"} > December 1989: Guido

    Van Rossum starts Python implementation > January 1994: Version 1.0 released > October 2000: Version 2.0 released > December 2008: Version 3.0 released > June 2009: Version 3.1 released > July 2010: Version 2.7 released with backports > 2014: Latest versions were 2.7.6 and 3.4 > January 2017: Current versions are 2.7.13 and 3.6.0 , versions <2.7 and 3.0 - 3.2 are deprecated WTF?!
  3. { "author": "Pablo Enfedaque", "twitter": "@pablitoev56"} > Backwards incompatibilities >

    print and exec become functions > All classes are new-style > Massive usage of generators instead of lists > All text (str) is Unicode and encoded text is binary data (bytes) > Other minor changes in std lib Python 3.0
  4. { "author": "Pablo Enfedaque", "twitter": "@pablitoev56"} > Proper encoding >

    asyncio > enums > Standard library virtualenvs > Exception chaining > Single-dispatch > unittest.mock > contextlib > "Better" GIL > concurrent.futures > selectors module > Qualified names > Type hints support > New optimised dicts implementation > Formatted strings literals > secrets module > Generalised unpacking Python 3.6 new features (vs. 2.7)
  5. { "author": "Pablo Enfedaque", "twitter": "@pablitoev56"} > Great features are

    waiting us in Python 3 > We are beyond half the planned life of Python 2.7 > Python 2.6 is officially retired with 2.6.9 release > Most 3rd party dependencies already in Python 3 > Or we could return to OSS all that we have been given > https://caniusepython3.com > Porting to Python 3 is not such a big deal > In most of the cases > So, no more excuses > It’s time to start moving to Python 3 Conclusions
  6. { "author": "Pablo Enfedaque", "twitter": "@pablitoev56"} Q&A Thanks for coming!

    Slides: https://speakerdeck.com/pablito56/python- 2-vs-python-3