Based on What's New In Python 3.3 by Raymond Hettinger.
New syntax features:
- New
yield from
expression for generator delegation. - The
u'unicode'
syntax is accepted again forstr
objects. - New
raise ... from None
syntax for suppressing exception context.
New library modules:
faulthandler
(helps debugging low-level crashes)ipaddress
(high-level objects representing IP addresses and masks)lzma
(compress data using the XZ / LZMA algorithm)venv
(Python virtual environments, as in the popularvirtualenv
package)
New built-in features:
- Reworked I/O exception hierarchy
Other features:
- Native support for implicit namespace packages (PEP 420).
- Qualified name
__qualname__
for classes and functions (PEP 3155).
Implementation improvements:
- Rewritten import machinery based on
importlib
. - More compact unicode strings.
- More compact attribute dictionaries.
Security improvements:
- Hash randomization is switched on by default.
Please read on for a comprehensive list of user-facing changes.