Учебник для Python - что мне делать: 2.x или 3.0?

Python 3.0 находится в стадии бета-тестирования, и вскоре выйдет финальный релиз. Очевидно, что потребуется значительное время для всеобщего принятия и для того, чтобы в конечном итоге заменить 2.x.

Я пишу учебник по некоторым аспектам программирования на Python. Мне интересно, следует ли мне делать это в Python 2.x или 3.0? (не то чтобы разница огромная)

учебник 2.x, вероятно, сейчас более полезен, но было бы неплохо начать создавать учебники 3.0.

у кого есть мысли?

(конечно, я мог бы сделать и то, и другое, но я бы предпочел сделать то или другое)

заменил тег 2to3 на python2.x и python3.0

Brad Gilbert 17.10.2008 03:35

Релиз 3.1 уже вышел!

Juergen 06.07.2009 12:16
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
7
2
3 337
6
Перейти к ответу Данный вопрос помечен как решенный

Ответы 6

Это зависит от вашей аудитории. Если это широкая аудитория, и вы планируете оставить ее в курсе надолго, я бы посоветовал с нетерпением ждать и перейти на 3.0. С другой стороны, если это для проекта или группы, которые будут работать в ближайшем будущем, Python 2, вероятно, будет иметь больше смысла.

Ван Россум (создатель Python) объясняет, что «если вы начинаете что-то новое, вам следует использовать 3.0». Поэтому большинству людей, желающих начать, следует даже НАЧАТЬ с версии 3.0. Это будет полезно, тем более, что их сейчас, вероятно, очень мало.

статья

Его зовут «ван Россум», а не «фон». И вы должны начать предложение с заглавной буквы V.

hcs42 17.10.2008 00:13

Ван Россум также говорит, что пройдет еще как минимум год, прежде чем вам придется выучить 3.0: artima.com/weblogs/viewpost.jsp?thread=211200

Glyph 18.10.2008 08:20

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

Различия достаточно малы, поэтому особого значения это не имеет.

подложка не будет, но для новичка существует огромная разница между "print" hello world "" и "print (" hello world ")"

helloandre 17.10.2008 00:26

Хм, мне было бы действительно интересно прочитать исследование, которое установило это. Вы можете указать мне на это?

Alex Coventry 17.10.2008 00:30

Алекс, я согласен с тобой. Различия могут быть значительными (если они очевидны) для резервного копирования установленных проектов, но они достаточно малы, чтобы, если вы хорошо знаете одну версию, вы можете освоить другую за несколько минут. Так что это не имеет большого значения, но за 3.0 будущее, так что я советую изучить его.

Dan Lenski 17.10.2008 00:33

Я имел в виду, что обучение кого-то использованию print "hello world" сильно отличается от обучения кого-то использованию print ("hello world") с точки зрения синтаксиса. учебник будет содержать достаточно различного содержания, чтобы его можно было заметить

helloandre 17.10.2008 05:22

Мне это кажется почти таким же, TBPH. у одного есть круглые скобки, у другого нет. с точки зрения новичка, это единственная разница. он даже более сплоченный - нет специальной оболочки для «печати», которая на самом деле не является функцией.

Claudiu 18.10.2008 08:25

Изучите Python 3.0, как подсказывает заразительный.

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

Фактически, Python 2.6 может дополнительно включать все новые синтаксические функции Python 3.0. Это очень хорошо продуманный переходный процесс.

Ответ принят как подходящий

Начните с 2.x. Большинство существующих библиотек будут использовать 2.x в течение длительного времени. В прошлом году Сам Гвидо сказал, что это будет «два года»., пока вам не нужно было выучить 3.0; остался еще год. Лично я думаю, что это будет дольше. Люди, пишущие код для 2.x, могут узнать, как использовать инструмент 2to3, и получить код, работающий в обеих версиях. Нет 3to2, поэтому код, написанный для python 3, значительно менее ценен.

Не говоря уже о том, каким разочарованием будет для ваших учеников узнать, что python 3 не установлен на их компьютере с Linux («/usr/bin/python» будет python 2.x по крайней мере в течение следующих 5 лет), что нет django для python 3, без wxwindows для python 3, без GTK для python 3, без Twisted для python 3, без PIL для python 3 ... настоящая сила Python всегда заключалась в его обширной коллекции библиотек, а библиотек очень мало для python 3 прямо сейчас.

Если ваше руководство хорошо написано, вы легко сможете обновить его до Python 2.6, 2.7 и, в конечном итоге, до Python 3.

спасибо .. очень хорошие моменты для рассмотрения.

Corey Goldberg 19.10.2008 00:57

когда django, pyside и twisted работают на Python 3.2.1 - переключайтесь!

anatoly techtonik 25.03.2011 05:20

Все еще ждем жизнеспособной сборки PyPy :)

Glyph 16.06.2014 20:50

Другие вопросы по теме