Как стать автором
Обновить

Комментарии 58

То что он медлит видно и по живому Python 2.x

НЛО прилетело и опубликовало эту надпись здесь
Меньше месяца назад переводили наш проект на третий питон. На поверку оказалось, что все python-2-only зависимости на поверке оказалось непокрытое тестами шило, кроме, разве что, librabbitmq. Все более-менее нормальные библиотеки давно поддерживают третий питон, а если нет — есть большой повод задуматься на счет их качества.
Дело не в лени программистов.
Давно доказано, что если человек думает медленно, это ни разу не означает, что он менее умный, чем те, кто думает быстрее.
Всегда не могу понять, почему при выпуске новой, не совместимой, версии языка не могут выпустить транслятор для старого кода? (хотя бы в рамках стандартной библиотеки)
эээ… 2to3?
Лучше сразу писать код, работающий и на py2 и на py3, например, с помощью six.
Извиняюсь не слышал. Тогда почему же переход такой медленный и многие все еще продолжают тащить 2 версию?
Если использовать 2to3 придётся поддерживать две ветки кода. 2to3 не решает всех проблем, обязательно что-нибудь вылезет, например, со строками, итераторами и т. п. Вот, например, перевод хорошей статьи на эту тему.

Разработчики библиотек сейчас стараются поддерживать 2 и 3 версию в рамках единой кодовой базы, используя six, future, собственные «compat»-модули. Это, конечно, не очень удобно, но «тащить 2 версию» придётся ещё долго, так как py2.7 много где используется и пока что официально поддерживается до 2020 года, если я правильно помню.
Но транслятор-то выпустили, называется 2to3: docs.python.org/2.7/library/2to3.html Но вот третья ветка отличается от второй не только синтаксисом.

А я не намекал что он не умный. Или что думает медленно. Я взял цитату из статьи и обыграл проблему с питоном 2.


И, впринципе, понятно что все так накинулись, но ваш коммент это уже нечто.

1. Аккуратнее надо выражать мысли когда так обыгрываете.
2. Не вижу ничего этакого «нечто» в моём комментарии. Ниже есть комментарий с цитатой из Алфреда Ван Вогта и я не вижу в своём комментарии ничего принципиально от него отличающегося.
Удивительный рост джавы за последние несколько месяцев… Кто-нибудь знает, с чем это связано?
BigData идёт в массы? =)
Да и последние несколько лет популярность тоже растёт. Возможно тут дело в Android'e?
При том, что до октября 2014 шёл неуклонный спад. Да так, что даже старый добрый Си вышел вперёд.
Занятно, что Питон чуть ли не единственный не Си-подобный язык в Топе.
Из-за Андроида, естесственно
TIOBE абсолютно не показателен.
Нет, эта статистика совершенно не внушает доверия. JavaScript всего 2,5%, серьезно? У stackoverflow больше похоже на правду.
Не очень уверен насчёт правды, так как 45,8% респондентов составили Web Developer, то есть почти половину, затем следуют студенты с 11,4%.
Python удобный и гибкий язык, чем больше его изучаю, тем больше он нравится.
Странно, что в начала 2000-х в Веб-разработке шла борьба между PHP и Perl, но очень мало использовался Python.
Podderzhivayu vashe mnenie
Знатоки Python, подскажите пожалуйста какие сейчас (python 3) используют gui библиотеки?

Я только начал изучать python, он мне очень понравился, но стандартная библиотека tkinter как по мне не очень удобна для сложных интерфейсов, наверно я привык что любой элемент (кнопку, поле для ввода и т.п.) можно разместить в любом месте (как в c# win forms, delphi), а не привязывать их к сеткам.

Хотелось бы что бы эта библиотека одинаково работала как в windows так и linux системах, ну и бесплатна для коммерческой разработки (а не так как QT).
GTK
wxWidgets (Phoenix) — есть поддержка Python 3, использует нативные тулкиты (win, cocoa (osx), gtk).
К нему нужны в комплект воистину христианские долготерпение и всепрощение. Или просто пофигизм. Внезапно и без причин кнопка съехала влево? Смирись, сын мой, ибо обратно она уже не встанет. Ложный путь wxWidgets даёт иллюзию возможности построения на нём современных интерфейсов, чем затягивает души вступивших на него в ад постоянной правки мелких недоделок в тулките и геену вычитывания неочевидных моментов в гугле.
Причём это вина не биндингов, а самого wxWidgets.
Нативные и современные — разные вещи. Если хочется современного, то вообще лучше взять webkit какой ни будь (cef, nw, electron, etc).

Делал довольно большие интерфейсы на нем (как с биндингами, так и на C++) — никаких проблем нет. Что-то съезжает только в кастомных рисованных виджетах. Если хорошо разобраться с сайзерами и как флаги влияют на соседей — проблем не будет :)
PySide — Python + Qt. Не требует покупки для коммерческих проектов.
ru.wikipedia.org/wiki/PySide
Разработчики Qt вроде как сказали, что будут его пилить официально. Ну то есть пока да. Есть Pyside слегка устаревший и есть PySide2 совсем сырой и вроде как нерабочий.
Хорошая новость, но изначально PySide тоже начинался как проект официальных разработчиков Qt, тогда ещё в Nokia. А потом его бросили. Хватит у них сейчас ресурсов на PySide2?
Например, Kivy. Так же можно на ней делать и для Android с iOS.

Ого, какая штука интересная. Я правда пока не совсем понял, это что, мой Python код будет на iOS и Android работать?

Да, написанный с использованием Kivy.
Ага, будет, как только вы дождётесь загрузки приложения (от 5 секунд идёт загрузка на моих планшете и телефоне). Для собственного пользования оно ещё куда ни шло, но у «обычного пользователя» столько терпения не будет.
Используйте метод «place()» для отрисовки, вместо «pack()» и «grid()». В нём есть полный набор параметров как относительного, так и абсолютного позиционирования, и задания размеров: x, y, relx, rely, width, height, relwidth, relheight.
Как же Вы его настраиваете для ускорения?
Использую интерпритаторы из семейства python — PyPy, JPython. Бывает пишу модули расширения на C (использую dll)
Очевидно же, правкой /etc/python/python.ini.
/sarcasm
А есть видео с самим докладом на TED?
Я не нашёл, по крайней мере.
Т.к. сам доклад был только вчера, я думаю надо подождать. пока появится.
  -- Быстрота мысли не всегда является признаком превосходства, -- проговорил главный биолог Хамар. --Существа с медленным, обстоятельным мышлением занимают в ряду мыслящих особей почетные места. 

Алфред Ван Вогт, "Чудовище"

Не касательно темы, замечательный рассказ. Очень рекомендую ознакомиться.

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


Пожалуйста, подскажите, как в Python принято решать подобные ситуации? Может, я неправильно подхожу к вопросу?

С точки зрения питоновского AST, лямбда и объявление функции эквивалентны, не считая дальнейшего присваивания переменной — для функции это происходит автоматически (имя переменной == имя функции).
Т.е. я к чему — для однострочных функций используйте лямбду, для многострочных — функцию, лучшего синтаксиса пока не придумали.
Лямбды в питоне, по большему счету — синтаксический сахар над функцией из одного действия. Если действий несколько — нет другого выхода, кроме как использовать функции. Только обычно незачем делать лямбду, в который вызывается функция, можно передать имя функции туда, куда передаете лямбду. Обертки лямбды функцией не избежать только тогда, когда сигнатуры не совпадают, но, насколько я понял, это не ваш случай.
Спасибо за эту статью, она замечательно сочетается с советом из соседней:
Вышесказанное подводит меня к следующему пункту нашей беседы: разговору о том, как ваша любимая технология появилась на свет. Как родился ваш любимый C#? Вы знаете, кто его создал? Как создавался .NET? Кто был его ведущим архитектором? Какие у этого проекта были ограничения и почему язык стал тем, чем он является теперь?

Примените этот шаблон к любому языку или CPU-архитектуре, которые вам нравятся и которые вы любите: Python, Ruby, Java, к любому языку программирования. Узнайте их происхождение и то, как они стали тем, чем являются сейчас. То же самое касается и операционных систем, сетевых технологий, аппаратного обеспечения, да чего угодно. Идите и узнайте, как люди придумали это, какими идеями руководствовались и как много времени потребовалось для того, чтобы их детище достигло зрелости. Потому что рождение хорошего программного обеспечения требует десятилетий, знаете ли.
https://habrahabr.ru/post/282674/
что-то не могу оригинал найти… (
Оригинал в блоге Гвидо (ссылка снизу поста). Самой записи, думаю, еще нету — слишком мало времени прошло.

А, это совсем новое выступление? спасибо… Что-то с мобильного приложения даже ссылка не отображалается

Ссылка на оригинал в блоге Гвидо: http://neopythonic.blogspot.com.by/2016/04/kings-day-speech.html
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории