Python 3.3 является первым выпуском, в который включены изменения в языке, после двухлетнего моратория — Python 3.2 имел только внутренние нововведения интерпретатора, не затрагивающие совместимость со старым кодом. Кроме того, это первый выпуск, никакие новые свойства которого не будут портированы в ветку 2.x.
Основные изменения:
- Синтаксис:
- оператор
yield from
- в целях совместимости и упрощения переноса приложений с ветки 2.x синтаксис строк вида — никаких реальных изменений.
u'unicode'
- оператор
- Новые модули:
- faulthandler для отладки низкоуровневых падений;
- ipaddress для высокоуровневых операций с адресами и масками;
- lzma — сжатие данных с помощью алгоритма XZ/LZMA;
- unittest.mock — тестирование;
- venv — виртуальные рабочие пространства, независимые от системного, каждое представляет собственный бинарник и набор модулей.
- Новые встроенные свойства:
- Улучшения реализации:
- переписаны механизмы импорта, основанные на importlib;
- более компактные юникодные строки для экономии места;
- более компактные словари, см. PEP412.
- Улучшения безопасности:
- рандомизация хэшей включена по умолчанию.