Собрали в одном месте самые важные ссылкии сделали Тренажер IT-инцидентов для DevOps/SRE
Есть ряд модулей, которые стоит ставить первыми. Этот набор у каждого свой. В моем наборе есть место для funcy. funcy - это набор мелких полезностей при работе с данными. Например, можно создать бесконечный список,...[Продолжение]
Порой возникают рутинные задачи, которые не хочется делать руками. Примером такой задачи может являться - скачать множество страниц по ссылкам. Если 5 ссылок еще вручную сохранить можно, а если их 1000? или 6250, как было в моем случае....[Продолжение]
Юнит-тесты хороши, когда покрывают весь ключевой код. Однако если проект чуть больше, чем "Hello, world!", то оценить степень покрытия весьма проблематично. Существуют инструменты, которые помогают это делать. Например - ...[Продолжение]
Генераторы это итерируемые объекты, которые можно прочитать лишь один раз. Это связано с тем, что они не хранят значения в памяти, а генерируют их на лету: »> mygenerator = (x*x for x in range(3)) »> for i in mygenerator...[Продолжение]
Не так редко спрашивают "Какую книжку почитать". Ответить на такой вопрос не просто, ибо зависит от человека. Однако, есть и универсальные книги - справочники. Сегодня хочу представить аннотацию к книге - Python. Подробный справочник от...[Продолжение]
Еще один стандартный модуль в Python - itertools. Модуль itertools - сборник полезных итераторов. В нем содержатся множество операций над итераторами, да и сами интераторы. Например есть бесконечная арифметическая...[Продолжение]
Docstring - (сокращение от documentation string, строка документации) встроенное средство документирования модулей, функций, классов и методов. Делается очень просто - сразу после определения указывается строковое значение, которое и...[Продолжение]
Первой проблемой при поддержке старых проектов является понять, как запустить его. Чтобы немного упростить эту задачу разработчики используют pip и файл requirements.txt. В этом файле записываются все необходимые для работы...[Продолжение]
Postgres предоставляет много встроенных возможностей для создания эфективных приложений, использующих базы данных. А в версии 9.4 появляется еще и полноценное JSON поле, при правильном использовании которого, отпадает...[Продолжение]
Разработка программ сопряжена с сложностями. Произвольно или нет лезут различные баги. Для поиска ошибок применяют различные инструменты, например дебаг. Дебаг бывает кустарным - print'ами, а есть более каноничный подход - дебаггерами....[Продолжение]
Тесты можно писать прям в коде, а точнее в docstring. Модуль doctest ищет куски текста, которые выглядят как интерактивные сессии Python и затем выполняет эти сессии, чтобы проверить, что они работают точно так же, как показано....[Продолжение]
Множество в python - "контейнер", содержащий не повторяющиеся элементы в случайном порядке. »> a = set() »> a set() »> a = set('hello') »> a {'h', 'o', 'l', 'e'} »> a = {'a', 'b',...[Продолжение]
При чтении чужого кода можно столкнутся с многими непонятными конструкциями. А сейчас хочу коротко осветить такую конструкцию как yield. Yield - это ключевое слово которое используется так же, как и слово return. Разница в том, что...[Продолжение]