LINUX.ORG.RU

Python 2 vs Python 3

 , , , ,


1

1

Решил изучить Python, но вот стал такой выбор: Python 3 с одной стороны лучше, последняя версия, оптимизация, все дела. С другой стороны, Python 2 используется более активно, у меня в зависимостях ничего не тянуло Python 3. Что выбрать, котаны?

★★★★★

Я для мелких программулек использую Python 2, он везде стоит по умолчанию, меньше действий для запуска. Для чего-то серьёзного, думаю, надо брать 3-й.

Legioner ★★★★★ ()

Решил изучить Python
Что выбрать, котаны?

Вообще не понятен вопрос. Ты должен знать разницу между этими ветками и умело применять.

shrub ★★★★★ ()
Ответ на: комментарий от shrub

должен

С чего вдруг должен?

знать разницу между этими ветками

Зачем это наследие? Пусть сразу учит 3ку.

умело применять

Не факт что понадобятся знания 2й ветки.

outtaspace ★★★ ()
Ответ на: комментарий от shrub

должен знать разницу между этими ветками и умело применять.

Зачем? Я не собираюсь поддерживать чужой код, да и учу пока для себя.

IPR ★★★★★ ()

В сортах

Нет, ну правда, ты бы еще джаву выбрал, 2016 год подходит к концу, а ты застрял в начале прошлого десятилетия.

Что выбрать

Go.

slon ()

3.5 со всеми новшествами

anonymous ()
Ответ на: В сортах от slon

Re: В сортах

Go

Go бы ты отсюда

anonymous ()
Ответ на: комментарий от outtaspace

Зачем это наследие? Пусть сразу учит 3ку.

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

alozovskoy ★★★★★ ()

Бери любой. Можно сразу оба. Так или иначе тебе скорее всего придётся использовать обе ветки.

Kilte ★★★★★ ()

Python 3 с одной стороны лучше, последняя версия, оптимизация, все дела

Лучше, чем что? Вангую что 2 питон лучше поддерживается во всяхих PyPy и Jython'ах.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)

Что выбрать, котаны?

Да, пофуй, на самом деле. Если тройку, то уж 3.5+, с модными и молодежными фишками.

С другой стороны, Python 2 используется более активно

Тут скорее, наоброт, никак отказаться от него не могут.

А вообще, да, раз решил изучать, и стоит выбор, то уже должен понимать, в чем разница.

vvn_black ★★★★★ ()

Бери третий, вторая ветка уже совсем скоро перестанет поддерживаться - в 2020, вроде. К тому же в третьем питоне многие вещи сделаны правильнее, и есть много интересных и полезных новшеств.

anonymous ()

2.7 — это LTS
3.* — это будешь переписывать весь свой код каждые пару лет, когда ветку будут дропать.

Научись в библиотеку __future__ и не слушай всяких идиотов на ЛОРе.

Goury ★★★★★ ()

Разрабатываю на Python уже достаточно. Если изучать, то только Python3. Почти не осталось тех, кто использует 2. К тому же сразу лучше изучать версию 3.5-3.6 с async/await.

deterok ★★★★★ ()
Ответ на: комментарий от Balantay

Так кто заставляет так криво настраивать IDE? Подразумевается, что из-за каждый задаёт размер таба исходя из личных предпочтений и размера монитора, чтобы код со строками адекватной длины не улетал. А если строки неадекватной длины и улетают даже с размером таба в 4 символа, то он и с пробелами улетит же.

KivApple ★★★★★ ()

Учить однозначно 3-ий. Факультативно изучить SIX. Это все что тебе нужно.

Особенно, тебя как новичка в питоне должны радовать такие штуки как async/await и более чем хорошо использовать их самого начала.

BigAlex ★★★ ()
Последнее исправление: BigAlex (всего исправлений: 1)
Ответ на: комментарий от BigAlex

async/await и более чем хорошо использовать их самого начала.

Не факт. Это явно не для новичка, ещё надо знать и понимать когда асинхронщину, а когда треды с процессами.

vvn_black ★★★★★ ()
Последнее исправление: vvn_black (всего исправлений: 1)

у меня в зависимостях ничего не тянуло Python 3

Много софта написано таким образом, что будет корректно работать с обеими ветками питона. Так что тут вопрос сугубо к ментейнерам твоего дистрибутива. Я при наличии альтернативы в репозитории всегда предпочитаю пакет собранный для Python 3.

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

С одной стороны третий питон определённо перспективно. Это просто факт - второй питон поддерживается только сообществом (причём поддерживаются сразу несколько веток), а третий питон является веткой, которую развивают официальные авторы. Плюс там таки есть приятные изменения, которые делают язык более логичным (самое банальное - print теперь такая же функция как и другие, а не особое ключевое слово).

С другой стороны в некоторых ситуациях второй питон всё ещё нужен. Например, третье-питон начиная с некоторой версии дропнул поддержку WinXP (а WinXP по моему мнению - идеальная ОС для виртуальной машины, потому что с одной стороны совместима с 95% вендософта, а с другой стороны достаточно мало жрёт, плюс на древнем железе работает лучше современного Linux), а второй питон - нет.

Так что пиши универсальный код, который будет работать и там, и там. Но начинай изучение с Python 3.

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 1)
Ответ на: комментарий от vvn_black

В том смысле, что хорошо изучать их с самого начала. Кто приходит с JS, например, должен ходить в асинхронщину без особых сложностей. Главное, что впринципе доступен выбор между тредами с процессами и евентлупом.

BigAlex ★★★ ()
Ответ на: В сортах от slon

Re: В сортах

Сейчас бы говорить про 2016 и предлагать язык из 70-х

anonymous ()

В 3м пистоне меньше насилия (напр. UnicodeDecodeError) и больше всяких полезных штучек (напр. https://www.python.org/dev/peps/pep-0448/). К тому же он будет развиваться, а вместе с ним и ты. А вообще без разницы. 2й будет поддерживаться еще 4 года, а то и больше если всякие ретрограды этого захотят.

qI__Ip ()
Ответ на: комментарий от KivApple

Так что пиши универсальный код, который будет работать и там, и там. Но начинай изучение с Python 3.

+1

justAmoment ★★★★★ ()
Ответ на: комментарий от IPR

Можешь не слушать. Вангую, что товарищ с головы до ног обмазан Java и у него ничего серьезного не пишется ни на чем кроме Java.

Они быстро сливаются, когда перейти на конкретику, например, есть OpenStack, который написан на Python и который де-факто сильно впереди всех остальных, и есть, например, CloudStack от Apache, который на Java и на котором 10,5 инвалидов сидят. Тут они вспомнят банковский сектор и всякие навороченную бизнеслогику на которую Python и не претендует, и тем более тебе это не нужно.

BigAlex ★★★ ()
Последнее исправление: BigAlex (всего исправлений: 1)
Ответ на: комментарий от IPR

Я вот тоже решил изучить японский язык, но вот стал такой выбор: Хирагана с одной стороны лучше, последняя версия, оптимизация, все дела. С другой стороны, Катакана используется более активно, у меня в зависимостях ничего не тянуло Хирагану. А на форумах советуют вообще не учить японский, ибо на нем ничего серьезного не пишут и не говорят. Что выбрать, котаны?

Ivana ()

3, если нет нужды в 2-онли библиотеках (ее обычно нет).

anonymous ()
Ответ на: комментарий от IPR

Дальше не читал, в таком случае только 3. Хотя бы потому, что у него возможностей больше. Если понадобится 2, просто глянешь в чём отличия - не сложно ведь.

InterVi ★★★ ()

Лутца. Он вроде как раз изложение ведет с оглядкой на обе версии.

winlook38 ★★ ()
Ответ на: комментарий от hibou

Ну это вопрос холиварный, если человеку нравится — почему бы нет. Большие продукты на нём пишут. В целом соглашусь, что для сколько-нибудь больших проектов мне больше нравятся типизированные языки, но это уже кому как.

Legioner ★★★★★ ()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Ivana

Кандзи наше всё, каны для слабых и инвалидов

Goury ★★★★★ ()
Ответ на: комментарий от BigAlex

с JS... в асинхронщину

Там оригинальные pratices (далекие от best), наводящие на мысль, что 90% плохо понимают, почему они пишут именно так.

Shadow ★★★★★ ()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от Goury

Я ж только спросил, чего нервничать-то?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.