Миграция с python 2.4 на python 2.6 - PullRequest
4 голосов
/ 27 мая 2009

Я работаю с устаревшей кодовой базой на работе с python 2.4 на python 2.6. Это делается для того, чтобы убрать «устаревший» тег и создать поддерживаемую, расширяемую основу для активной разработки, поэтому я получаю шанс «сделать все правильно», включая рефакторинг для использования новых функций 2.6, если это приводит к более чистому, более устойчивому коду. (Я уже в восторге от утверждения «с» :)). Есть хорошие советы по миграции? Лучшие практики, шаблоны проектирования и т. Д.? Я в основном программист на рубине; Я изучил Python 2.4, работая с этим кодом, но ничего не знаю о современных принципах проектирования Python, поэтому не стесняйтесь предлагать вещи, которые, по вашему мнению, очевидны.

Ответы [ 2 ]

5 голосов
/ 27 мая 2009

Прочитайте изменения Python 3.0. Цель 2.6 - стремиться к 3.0.

От 2,4 до 2,6 вы получили много вещей. Это самые важные. Я делаю этот ответ вики-сообщества, чтобы другие люди могли его редактировать.

  1. Функции генератора и оператор дохода.

  2. Более последовательное использование различных типов, таких как list и dict - они могут быть расширены напрямую.

  3. from __future__ import with_statement

  4. from __future__ import print_function

  5. Исключениями являются новые классы стилей, и существует более согласованная обработка исключений. Строковые исключения были удалены. Попытка их использования вызывает ошибку TypeError

2 голосов
/ 27 мая 2009

Полагаю, вы их уже нашли, но для справки и для других, вот список новых функций в этих двух версиях:

Помимо выбора функций из этих документов, я предлагаю использовать возможность (при необходимости), чтобы код соответствовал стандартному стилю кода Python в PEP 8 .

Есть несколько автоматизированных инструментов, которые могут помочь вам правильно понять стиль Python: pep8.py реализует проверки PEP 8, а pylint дает более крупный отчет, который также включает в себя такие вещи, как undefined переменные, неиспользованный импорт и т. д. pyflakes - это меньший и более быстрый пилинт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...