Я собираюсь запустить на длинном (~1-год) проект программирования в Python. Я хочу использовать wxPython для своего GUI (поддерживает 2.6), но я также хочу использовать 3.1 для остальной части проекта (чтобы начать использовать 3.x синтаксис).
Есть ли какой-либо способ для меня разработать проект, который смешивается 2.x и 3.x модули? Или я должен просто стиснуть зубы и использовать любого 2.x (предпочтенный, так как я действительно хочу изучить wxPython), или 3.x повсюду?
Спасибо,
Mike
Python 2 и 3 не так уж сильно отличаются. Если вы хорошо изучили Python 2, то знакомство с Python 3 займет считанные минуты. Официальная рекомендация гласит, что вам следует использовать Python 2.6 (текущая версия) и стараться быть совместимым с ним. В настоящее время Python 3 не является вариантом для крупных проектов, поскольку практически ни один из популярных пакетов еще не переведен. Но разработка Python 2 и 3 будет продолжаться параллельно в течение длительного времени, поэтому вы не много потеряете, отказавшись от использования Python 3. Вы можете импортировать многие синтаксические особенности 3 (строковые литералы Unicode, деление, функцию print
, абсолютный импорт) с помощью модуля __future__
, а стандартная библиотека в основном осталась прежней. Поэтому я бы рекомендовал использовать Python 2.
Вам следует использовать python 2.7 (релиз-кандидат ожидается в ближайшие дни), который очень близок к python 3.1, а также код, заботящийся о том, чтобы не использовать устаревшие функции. Существует последняя версия wxpython для python 2.7. После того, как wxpython получит сборки 3.1-3.2, преобразование кода не должно быть слишком болезненным. Тем не менее, у wxpython нет сроков перехода :-(
Другой вариант - использовать pyQt, который уже имеет сборки для python 3.1
смешивание возможности использования wxPython (2.x) + с изучением нового синтаксиса (3.x)
Не «смешивайте».
Напишите Python 2. Заставьте его работать.
Поиграйте с Python 3 отдельно. Не смешивайте.
Когда в Python 3 доступны различные пакеты и модули, используйте преобразование 2 в 3 для создания Python 3. Вы столкнетесь с небольшими проблемами. Исправьте свой Python 2, чтобы ваш пакет работал в Python 2 и также работал после преобразования.
Затем вы можете отказаться от поддержки Python 2 и сосредоточиться на Python 3.
Не «смешивайте».