This document summarizes the key changes and new features introduced in Python 3, including:
- Strings are now unicode by default and implicit conversions between str and bytes are prohibited.
- Integers are unified under int and long is removed.
- New features like formatted string literals, function annotations, nonlocal and keyword-only arguments, extended iterable unpacking, comprehensions, exception chaining, and yield from.
- New collection abstract base classes and data structures like OrderedDict and Counter.
- Metaclasses can now control class creation and new metaclass like OrderedClass is introduced.
- Under the hood improvements including a new GIL and stable ABI version tagged shared object files.