LINUX.ORG.RU

Почему многие до сих пор не перешли на Python 3?

 


0

3

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

★★★

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

потому что многие библиотеки не портированы и не собираются. а библиотеки не портируют, потому что спроса нет

marvin_yorke ★★★
()

Слоупоки.

iotop на 3.2 до сих пор не работает, лол

Kindly_Cat
()

потому что многим лень его осиливать и портировать библиотеки.

Deleted
()

Потому что бум питона-мании прошел. На волне успеха и родилась 3 версия. Но когда это произошло, то оказалось, что он никому не нужен. Олдфаги и со вторым неплохо живут, а свежая кровь ушла писать на руби.

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

а свежая кровь ушла писать на руби.

Если б не наркоманский синтаксис руби, был бы вполне приличный язык.

anonymous
()

На самом деле, все нормальные проекты переходят Py3k. Кто не перейдёт, тех либо форкнут, либо вообще реимплиментируют. так что всё нормально.

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

но для обучения он по прежнему хорош для быстрого старта

anonymous
()

Видел тред на одной странице.

Deleted
()

А смысл? Только ради того, что переменные можно объявлять по-русски?! Сомнительная радость.

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

А смысл? Только ради того, что переменные можно объявлять по-русски?! Сомнительная радость.

Полноценная поддержка Юникод - тоже сомнительная радость?

hippi90 ★★★★★
()

Потому что это не всегда просто. Ну и большому кораблю - большая тор^Wинерция.

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

Только ради того, что переменные можно объявлять по-русски?!

Там чейнжлог на 100500 страниц. А вот юникодные переменные это зло.

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

А ты попробуй старые велосипеды под третьепитоном запусти! Не взлетит!

Так почему новые на 3-м не пилят? А продолжают на втором?

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

Руби, питон, перл… А нормальных скриптовых языков кроме баша и нет…

Сейчас же срач начнется. Тем более ты не прав.

VirRaa ★★★
() автор топика

Переползут, просто это процесс эволюционный, некуда торопиться. Пока всё и на 2.7 работает. Та же Django переходит. Сейчас поддержка Python 3 там pre-alpha.

zch
()
Ответ на: комментарий от VirRaa

Так почему новые на 3-м не пилят? А продолжают на втором?

Потому что есть такая штука, как зависимости. Какой-нибудь Pyro хочет Math. А последний портировать никто не хочет. Вывод? Жгем на max(get_compat_versions(Math))

GateKeeper ★★
()

Ждем python 4, чтобы сразу на него перейти.

Int0l ★★
()

Есть другие радости кроме бесконечного пиления кода

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

Ну не переписывать же весь Math только для того, чтобы запилить у себя пару-тройку косинусов-арктангенсов?

GateKeeper ★★
()

Потому что с каждым выходом бидона нужно учить новый язык

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

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

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

А на 2-ке все работает.

Но ура-школота упорно не хочет этого понимать.

Тс, Python 3, Perl 6, etc - они как коммунизм. Хорошо смотрятся в будущем, не более того. Но до этого светлого будущего еще надо дожить. Хотя бы внукам.

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

потому что 3я версия не нужна

В тырпрайзе с его RHEL 5...5.5 - дык точно. И профит от перевода на третьи рельсы весьма сомнительный.

Местные тролли сознательно отчего-то не понимают, что перевести, скажем, 20гиговый репозиторий бидон кода, ну, там 2-2,5 MLoC - это совсем не 2 пальца по пьяни обоссать. Это потраченные здоровье, (немалые) деньги, драгоценнейшее время - и все это ради циферки «3». Ну потому что прирост функционала (единственное, ради чего нужен любой код) от такого перевода строго равен 0.

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

Так почему новые на 3-м не пилят? А продолжают на втором?

Зависит от ответа на вопрос: «Вам шашечки, или ехать?».

Вот тебе, очевидно, важны «шашечки», а «большинству» - «ехать».

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

Вот тебе, очевидно, важны «шашечки», а «большинству» - «ехать».

Из тебя хреновый диванный аналитик, не на циферки все равно, мне главное понять, в изучение какой версии углубляться. Нужны были бы шашечки, я бы молча учил третий.

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

Ну потому что прирост функционала (единственное, ради чего нужен любой код) от такого перевода строго равен 0.

Вполне может быть и так, что <0. Я когда попробовал переделать один из своих текстовых анализаторов получил падение по перфомансу процентов на 10-15 на том же алгоритме.

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

мне главное понять, в изучение какой версии углубляться
Нужны были бы шашечки, я бы молча учил третий.

Если нужно «ехать», то подобный выбор уже не стоит. Да и разработчик к тому времени уже знает необходимый набор (альтернативных) инструментов, равно как и большинство их плюсов и минусов.

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

Если нужно «ехать», то подобный выбор уже не стоит.

Это почему?

Да и разработчик к тому времени уже знает

К какому времени?

Опять газируешь лужу. Не позорься уже.

VirRaa ★★★
() автор топика

Если б Python правильно развивался, то и никаких действий по «переходу» не надо было бы совершать

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

Так почему новые на 3-м не пилят?

Потому что разводят срачики на ЛОРе вместо того чтобы пилить.

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

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

PolarFox ★★★★★
()
Ответ на: комментарий от border-radius

Ну так бэкпортировали бы из py3k в 2.7 поведение, при котором u"строка" is «строка», и всё.

Это как раз одна из причин, почему при переходе на питон3 всё ломается.

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

Не, я как раз за то, что лучше интерфейсы бы все оставили. То есть .decode("utf-8"), например, ничего бы не делал. Тогда и не ломалось бы ничего. Кстати, .encode() и .decode() в ненужном третьепитоне какого-то хрена выпилили в отдельный модуль.

border-radius
()
Ответ на: комментарий от border-radius

Ну так бэкпортировали бы из py3k в 2.7 поведение, при котором u"строка" is «строка»

__future__

и всё

Далеко не всё.

baverman ★★★
()

Почему многие до сих пор не перешли на Python 3?

Python2 он как паразитная чёрная дыра.

пока кто-то портирует свою библиотеку под Python3 — в это время кто-то другой напишет новую библиотеку под Python2.

другими словами — количество библиотек под Python2_only и под Python3 — увеличивается примерно одновременно. а надо бы чтобы увеличивалось бы только их количество под Python3 :)

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

От php-кодера особенно лестно услышать это :)

Тебя это ущемляет? =)

VirRaa ★★★
() автор топика
21 февраля 2014 г.

Потому что многие разочаровались в 3к. Ждали-то в общем-то многого, коль скоро разморозка синтаксиса прошла. Ждали серьезной подвижки, а получили пшик..... даже глобальную блокировку не убрали (доводы Гвидо об увеличении скорости однопоточного приложения лично мне не кажутся убедительными).

Так что и смысла особого «гнать коней» никто не видит: переходят на 3К в основном тогда, когда сталкиваются с нерешаемой во второй ветке проблемой.

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