Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 21, 2019 01:25:22

Koala
Зарегистрирован: 2015-10-28
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Уважаемые гуру (и гуреянки :-) python!

Что Вы ответите на вопрос: а зачем, собственно начали делать 3-й питон?
Нельзя ли было бы бы обойтись только 2-м?

Это же в виде списка :-)

 ["почему", 'отчего', 'зачем', "из-за чего", "из-за кого"]
начали делать python v.3?

Отредактировано Koala (Янв. 21, 2019 01:30:55)

Офлайн

#2 Янв. 21, 2019 08:24:46

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10024
Репутация: +  857  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Koala
Нельзя ли было бы бы обойтись только 2-м?
Это обычное версионирование программ. Скрипты для третьего питона не могут выполняться на втором питоне.
Когда в программе ничего не меняется, меняется третье число. (баги исправляются)
Когда в программу добавляется новая возможность, меняется второе число. (добавляется функция)
Когда из программы удаляется какая-то возможность, меняется первое число. (удаляются функции)

Если конкретно взять, то в третьем питоне полностью переделаны строки из одной формы в другую, многие встроенные функции слиты в одну, оператор print заменён на функцию print(). То есть изменено прямо ядро языка и из него удалены многие конструкции.



Отредактировано py.user.next (Янв. 21, 2019 08:25:20)

Офлайн

#3 Янв. 21, 2019 10:39:46

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2849
Репутация: +  186  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Ну наверное из за непреодолимого желания всё поломать.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#4 Янв. 21, 2019 11:02:24

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Пайтон 3 разрабатывался с целью устранения фундаментальных изъянов в языке. Эти изменения не могли быть сделаны при условии сохранения полной обратной совместимости с 2-й версией, поэтому изменили номер версии.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#5 Янв. 21, 2019 12:46:07

Koala
Зарегистрирован: 2015-10-28
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

PEHDOM
Пайтон 3 разрабатывался с целью устранения фундаментальных изъянов в языке. Эти изменения не могли быть сделаны при условии сохранения полной обратной совместимости с 2-й версией, поэтому изменили номер версии.
Спасибо, но что-то Вы не договариваете.

Какие это “фундаментальные изъяны”, где “инь”(изъ) а где “яны” :-) ?

Допустим я утверждаю, что 3-й питон пришлось делать из-за невозможности на 2-м нормально работать с unicode, а unicode нагрянул, ну и оказалось, что легче сделать 3-ю версию “заново”, чем перепиливать 2-ю для юникода (оно же “работа со строками”, но там же не только строки, но и все остальные структуры данных, кроме путей файлов в Win, которые по прежнему в cp866, но тут уж дело не в python-е).
(Т.е. 2-ю конечно допиливали, но до конца не смогли.)

Такое объяснение годится? или нет? или наполовину?

P.S. кроме желания все поломать, не было ли у кого желания все починить? :-)

Офлайн

#6 Янв. 21, 2019 13:45:35

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Koala
Такое объяснение годится? или нет? или наполовину?
там на самомо деле много изменений: это замена оператора print встроенной функцией, улучшение способа деления целых чисел и поддержка Unicode по умолчанию, range заменили на xrange, но при этом название осталось range, у словарей убрали “лишние” методы, map, filter и zip стали возвращать итератор вместо списка.. полный список можно почитать тут https://docs.python.org/3.0/whatsnew/3.0.html
Вобщем все этого оказалось слишком много , нужно было или городить костыли или отказаться от обратной совместимости.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#7 Янв. 21, 2019 14:29:06

Koala
Зарегистрирован: 2015-10-28
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Я это понимаю, но замена print, xrange/range, и прочее, и замена input-ов, которые Вы забыли упомянуть, это конечно много, + традиционное исправление ошибок, но все же это мелочи. А вот что “по крупному”? я полагаю, что unicode, но может я ошибаюсь. Ведь переход на unicode требует “покорежить” очень много внутренних механизмов, которые до того работали с 256-ю символьной табличкой.

Но может чего-то ключевого-главного таки нет, и я ищу в темной комнате белую кошку, которой там просто нет? (убежала).


Отредактировано Koala (Янв. 21, 2019 14:32:24)

Офлайн

#8 Янв. 21, 2019 14:52:08

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Koala
не надо думать что там сидят глупые люди. Была произведена огромная работа (часть которой конечно уже можно было видеть в виде backports в 2.6/2.7). ВышеPEHDOM уже указал ссылку на summary по изменениям. Было сделано много изменений ломающих обратную совместимость как на уровне python кода, так и наверняка на уровне C. Все ради того что бы очистить существующую кодовую базу от всего того негативного, что мешает дальнейшему развитию языка. И все это нельзя было провести минорным релизом. Те программисты кто работают в крупных проектах понимают как сложно даются фундаментальные изменения.
На самом деле какой то флеймообразующий топик.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#9 Янв. 21, 2019 15:17:14

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2849
Репутация: +  186  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

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

Вот только я ничего негативного в 2.x припомнить не могу… Конечно там есть шероховатости, но не более. Ломать из-за них совместимость не следовало.

> P.S. кроме желания все поломать, не было ли у кого желания все починить? :-)

Желание всё поломать == Желание починить всё что работает.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Отредактировано Rodegast (Янв. 21, 2019 15:20:01)

Офлайн

#10 Янв. 21, 2019 22:55:58

Koala
Зарегистрирован: 2015-10-28
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

почему начали делать python v.3?

Большое спасибо всем, кто откликнулся. Не хочу развивать флейм.
Хотел просто для себя прояснить ответ на этот вопрос.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version