Собрали в одном месте самые важные ссылки
читайте нас в Twitter
Мы рассмотрим python-библиотеку под названием readability-lxml (https://github.com/buriy/python-readability), её применение и механизм работы для задачи извлечения текстов новостных страниц.
Тестирование программ повышает уверенность в ее способности работать. Есть даже большие школы, которые говорят о тестах, например, TDD, BDD.
У ручных тестов есть недостаток, среди прочих - тесты пишет человек. В следствии этого - он не сможет проверить работу функции/класса/etc на всех данных. А когда нам быть уверенным что даже на самых невалидных данных работает корректно, то без случайных данных не обойтись.
Ситуация: написали web-проект, свой, домашний, а может и на работе. Надо его опубликовать в Интернет - задеплоить. Зашли на сервер, активировали venv, скачали новые исходники из репозитория, накатили миграции, обновили static-файлы, перезапустили, предположим, celery, перезапустили uwsgi.
И тут, поняли что забыли раскоментировать строчку в коде. Делаем коммит, снова заходим на сервер, активировали venv.... Зачем вся эта рутина с деплоем? Может есть способ проще? Мы же IT-шники, давайте напишем скрипт.
Библиотека и утилита для генерации .pex (Python EXecutable) файлов. Изменения описаны по ссылке https://allmychanges.com/p/python/pex/#1.1.0. Скачать можно по ссылке: https://pypi.python.org/pypi/pex
vim-autosurround - это плагин написанный на Python, который позволяет упростить установку второй скобки (закрывающей)
В Интернет часто говорят об ООП, об объектах. Так какой смысл во всем этом? Какая польза, недостатки? Соображения на эту темы вы сможете найти в видео:
Цикл do while отличается от цикла while тем, что в do while сначала выполняется тело цикла, а затем проверяется условие продолжения цикла. Из-за такой особенности do while называют циклом с постусловием. Таким образом, если условие do while заведомо ложное, то хотя бы один раз блок операторов в теле цикла do while выполнится.
Иииии.... такой конструкции - do...while нет в Python. Написать цикл с постусловие можно так:
В рамках проекта dnsteal развивается фиктивный DNS-сервер, позволяющий организовать скрытую отправку файлов по протоколу DNS, используя штатные системные утилиты резолвинга.
PyPy — это интерпретатор Python, который написан на Python (RPython) и может компилировать сам себя.
Основное отличие от обычного CPython — наличие JIT компилятора. Прелесть JIT компилятора в том, что в течении работы программы оптимизируются ее части.
Скорость исполнения кода на PyPy выше. На сайте http://speed.pypy.org/ вы можете найти сравнения CPython и PyPy. На сайте есть график (в самом низу): На графике видно, что скорость исполнения одного и того же кода на CPython и PyPy различается в среднем в 7 раза.
Не только в Ruby и JavaScript есть неочевидные вещи. Python тоже не отстает.
Утилита позволяет провести анализ вашего кода и составить наборы requirements.txt для Python 2 и Python 3
Проект позволяет генерировать smoke тесты для django проектов на основе указанной конфигурации.
В работе со студентами и учениками я заметила, что при изучении какого-либо языка программирования большой интерес вызывает работа с графикой. Даже те студенты, которые скучали на заданиях про числа Фибоначчи, и уже казалось бы у них пропадал интерес к изучению языка, активизировались на темах, связанных с графикой.
Поэтому предлагаю потренироваться в написании небольшой графической програмки на Python с использованием tkinter (кроссплатформенная библиотека для разработки графического интерфейса на языке Python).
Код в этой статье написан для Python 3.5.
В стандартной Python начиная с 2.3 существует механизм импорт-хуков. Зачем они нужны? Все очень просто - захотелось добавить поддержку импорта из .zip архивов. Ява такое может (.jar) - чем Питон хуже? Но открывать редактор только ради .zip не очень... Поэтому Python умеет загружать модули из базы данных или с соседнего сервера.
Механизм механизм импорт-хуков реализован с помощью:
...
Репозиторий содержит код для обучения Нейронной сети без учителя.
Python интерфейс для PostgreSQL. Изменения описаны по ссылке https://allmychanges.com/p/python/psycopg2/#2.7. Скачать можно по ссылке: http://pypi.python.org/pypi/psycopg2/