2010-04-02 2 views
10

Я изучаю python в течение некоторого времени. Начав этот «обучающий питон», я решил изучить последнюю и самую лучшую версию python 3.1. Я сожалею об этом решении сейчас, потому что я хотел попробовать свои силы в некоторых фреймворках веб-разработки python & похоже, что многие из них не поддерживают 3.1, но & похоже, что им могут потребоваться годы для поддержки новой версии Python, особенно Django и TurboGears. Это действительно разочаровывает. Поэтому, пользователи SO, есть ли у вас какие-либо рекомендации для веб-фреймворка для меня, который работает в версии 3.1 и поддерживает некоторые из современных (я думаю, я никогда не узнаю;)), такие как веб-фреймворки, такие как MVC/ORM/URL-маршрутизация/кэширование и т. Д. .Python для веб-разработки для python 3.1 пользователь

+0

Я думаю, что это хороший вопрос, хотя я предлагаю вам использовать python2. 7. +1 – YOU

+0

Придет, но да, webdev еще нет в Py3k. Это разочаровывает и разочаровывает; у нас до сих пор нет даже стандарта WSGI. – bobince

ответ

1

Python 2.6 и Python 3.1 действительно не все разные, я просто предлагаю вам изучить оба, тем более, что обе ветви Python будут сосуществовать некоторое время ... так что лучше всего изучить небольшие различия. Документ «What's New in Python 3.0» объясняет большую часть различий между 2.6 и 3.0.

5

Как насчет пытается Python2.7? многие функции питона 3.x являются портированными до 2,7 в последнее время, как OrderedDict, быстрее Io модулей, установленных постижений, Dict постижений и т.д ...

И Python 2.7 работают никаких проблем с версией django 1.2 trunk в моем опыте.

На мой взгляд, изучение новой структуры займет больше времени, чем переход с Python2.x на Python3.x, поэтому выберите один фреймворк и просто продолжайте использовать python 2.x и переключите его на 3.x, когда придет время ,

+1

Очень верно в отношении разницы во времени, чтобы изучить другую структуру и переключиться с Python 2.x на 3.x – Echo

3

Как и другие, я предлагаю вам начать с Python 2.6.x - Python 2.7 будет выпущен этим летом, хотя сегодня вы можете получить альфа-версию или бета-версию.

Хотя Python 3.x имеет обратную несовместимого с 2.x, синтаксис Python не будет неузнаваем ... в значительной степени все это очень похоже на 2.x, но это легко сломать код, когда print изменяется от оператора к функции. Так что не беспокойтесь о Python 3 на данный момент. Как уже упоминалось, вы можете сразу начать работу с большим количеством веб-фреймворков, работающих в Python 2.x.

Кроме того, просто из-за нумерации не следует обманывать, думая, что Python 2 устарел каким-либо образом, и вы не можете последовательно следовать графику. Другими словами, Python 2.7 будет более новым, чем Python 3.0 и 3.1. (3.2 не будет выпущен до конца этого года.) Опять же, Python 2 НЕ был EOL'd - активно развиваются 2.x и 3.x.

Промышленный мир по-прежнему работает на Python 2.x; появление 3.x является напоминанием о том, что следующее поколение здесь, и это время, когда вся инфраструктура и инфраструктура нижнего уровня должны начать свою работу по переносу, чтобы мы все в конечном счете мигрировали.

Если вы хотите узнать больше об отношениях между Python 2, Python 3 и изменениях/различиях между ними, а также временной шкале и миграции, вы можете проверить эту онлайн-статью, которую я написал в начале этого года:

«Python 3: Эволюция языка программирования»
http://www.informit.com/articles/article.aspx?p=1328795

Я также прочитал лекцию на эту же тему на PyCon 2010 в феврале.Вы можете получить доступ к видео и слайд-PRESO здесь:
http://us.pycon.org/2010/conference/schedule/event/29/

1

Там является (есть) на самом деле порт Джанго к Py3k.

Я также помню очень хорошо, что читал нить о проекте университета портирования Джанго в py3k, на Джанго-разработчиков списка рассылки, но я не могу найти нить в данный момент ,

EDIT О здесь:

https://bitbucket.org/fiji/django-3k/

Проект руководит студентами в Университете Торонто. :-)

EndEdit

Запрашивание что-то вроде "Джанго py3k порт" приносит некоторые полезные результаты.

Также смотрите по следующим адресам:

2

CherryPy 3,2 (по-прежнему работает на) будет работать на Python 3.x

бутылки может также запустить на Python 3.x после использования 2to3 на нем. Легко сделать, и он работает. Тем не менее, бутылка не является «полной каркасом», но она проста в использовании.

Edit:

Я использовал бутылки в Python 3.1, Stackless Python 3.1, чтобы быть конкретным, для игры, что я медленно работаю. Но на работе я просто использую Python 2.6. И скоро я буду использовать Webpy.

Сайт, над которым я работаю, находится на PHP, но когда мне нужно добавить новую функцию, которую я могу легко отделить от всего кода PHP, я сделаю это в python. Несмотря на то, что я работаю с PHP почти каждый день и пользуюсь Python всего несколько раз в месяц, я все еще могу сделать что-то быстрее на Python, чем PHP :)

 Смежные вопросы

  • Нет связанных вопросов^_^