Всем привет! Это уже десятый выпуск дайджеста на Хабрахабр о новостях из мира Python.
В сегодняшнем выпуске вы найдёте интересные материалы, касающиеся Python 3 и его внутреннего устройства, Django, производительности и многого другого. Присылайте свои актуальные материалы, а также любые замечания и предложения, которые будут добавлены в ближайший дайджест.
А теперь к делу!
Да, Python медленный, но меня это не волнует
О том, что действительно важнее — продуктивность или производительность?
Python 3 Patterns, Recipes and Idioms
Очень крутая подборка паттернов и рецептов для Python 3
The Meaning of Underscores in Python
О назначении символа нижнего подчёркивания в Python
Exposing Python 3.6's Private Dict Version
Немного о внутреннем устройстве словарей в Python 3.6
Python Functions Aren't What You Think
Небольшая заметка о том, что, на самом деле, представляют из себя функции в Python
Python: the thing good Objects come in
Заметка о внутреннем устройстве объектов в Python
Debugging an inactive python process
Отличная статья о том, как можно осуществлять отладку неактивного процесса в Python
Modern Django?—?Part 0: Introduction and Initial Setup
Modern Django?—?Part 1: Project Refactor and Meeting the Django Settings API
Modern Django?—?Part 2: REST APIs, Apps, and Django REST Framework
Серия статей, рассказывающих о том, как начать работать с Django
Chaos Bot
Интересный эксперимент, в котором всю разработку отдали в open-source сообщество.
Gitsuggest
Инструмент, который подсказывает github-репозитории на основе тех, которые вам понравились.
News Audit
Инструмент для определения «фейковых» новостей
Предыдущий выпуск дайджеста ищете здесь:
Pygest #9. Релизы, статьи, интересные проекты из мира Python [8 мая 2017 — 22 мая 2017]
Спасибо за внимание! Присылайте Ваши предложения для публикации в дайджесте!
В сегодняшнем выпуске вы найдёте интересные материалы, касающиеся Python 3 и его внутреннего устройства, Django, производительности и многого другого. Присылайте свои актуальные материалы, а также любые замечания и предложения, которые будут добавлены в ближайший дайджест.
А теперь к делу!
Статьи
Да, Python медленный, но меня это не волнует
О том, что действительно важнее — продуктивность или производительность?
Python 3 Patterns, Recipes and Idioms
Очень крутая подборка паттернов и рецептов для Python 3
The Meaning of Underscores in Python
О назначении символа нижнего подчёркивания в Python
Exposing Python 3.6's Private Dict Version
Немного о внутреннем устройстве словарей в Python 3.6
Python Functions Aren't What You Think
Небольшая заметка о том, что, на самом деле, представляют из себя функции в Python
Python: the thing good Objects come in
Заметка о внутреннем устройстве объектов в Python
Debugging an inactive python process
Отличная статья о том, как можно осуществлять отладку неактивного процесса в Python
Modern Django?—?Part 0: Introduction and Initial Setup
Modern Django?—?Part 1: Project Refactor and Meeting the Django Settings API
Modern Django?—?Part 2: REST APIs, Apps, and Django REST Framework
Серия статей, рассказывающих о том, как начать работать с Django
Интересные проекты
Chaos Bot
Интересный эксперимент, в котором всю разработку отдали в open-source сообщество.
Gitsuggest
Инструмент, который подсказывает github-репозитории на основе тех, которые вам понравились.
News Audit
Инструмент для определения «фейковых» новостей
Предыдущий выпуск дайджеста ищете здесь:
Pygest #9. Релизы, статьи, интересные проекты из мира Python [8 мая 2017 — 22 мая 2017]
Спасибо за внимание! Присылайте Ваши предложения для публикации в дайджесте!
Поделиться с друзьями
Комментарии (8)
chemtech
05.06.2017 13:33Я правильно понимаю что в Gitsuggest (Инструменте, который подсказывает github-репозитории на основе тех, которые вам понравились) нужно вводить логин, пароль от GitHub?
andrewnester
05.06.2017 14:12необязательно
# Password can be skipped which means you chose to go the unauthenticated
# way which may raise RateLimitExceeded exception.
fireSparrow
Спасибо за подборку.
Кто-нибудь может объяснить мне пятую статью («Python Functions Aren't What You Think»)? Почему её автор преподносит то, что он пишет, как какое-то открытие, как сакральное знание о некой скрытой механике? На мой взгляд, всё, что там написано, очевидно следует из того факта, что в питоне функции являются объектами первого класса.
andrewnester
вам спасибо!
на самом деле этот вопрос очень актуален для людей с опытом в других языках, начавших писать на Python.
часто такие вопросы встречал у людей с предыдущим опытом в PHP.
но причину, почему это так вы указали верно, да
werevolff
Интересно уточнение: ф-ии в python всегда создаются анонимными, а потом создаётся переменная с именем ф-ии и ей присваивается значение в виде этой ф-ии. Вообще, вопрос этот спорный. Не факт, что под капотом всё так и будет, однако, если всё так, мы имеем несколько интересных последствий. Например, мы находим объяснение тому, что функция может переопределить переменную, объявленную выше. И, на сей раз, объяснение не ограничивается формулой «просто потому, что пространство имён». Ещё, мы предполагаем, что объект функции создаётся раньше, чем присваивается имя (по крайней мере, автор пишет именно так). Я не знаю где бы это могло использоваться, но, уверен, позже мы придумаем что-нибудь.
Да, если всё так и есть, в теории, мы можем сделать так:
John_Minority
> Например, мы находим объяснение тому, что функция может переопределить переменную, объявленную выше.
> И, на сей раз, объяснение не ограничивается формулой «просто потому, что пространство имён».
«Функция, как и все остальное в языке Python, является объектом.» Этого не достаточно для объяснения?
У нас же есть магический метод __call__ для создания функции через экземпляр класса
werevolff
Иногда полезно читать несколько статей в дайджесте прежде, чем начинать спорить из-за одной:
З.Ы. Довольно интересно: это реально моветон, или автор слишком осторожен?
John_Minority
Ну, поведение существующих магических методов никто менять не будет, а вот придумывать свои — это моветон.