IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter

     16.02.2016       Выпуск 113 (15.02.2016 - 21.02.2016)       Интересные проекты, инструменты, библиотеки

Mpmath – библиотека для арифметики с произвольной точностью

>>> from mpmath import mp
>>> mp.dps = 50
>>> print(mp.quad(lambda x: mp.exp(-x**2), [-mp.inf, mp.inf]) ** 2)
3.1415926535897932384626433832795028841971693993751

     16.02.2016       Выпуск 113 (15.02.2016 - 21.02.2016)       Интересные проекты, инструменты, библиотеки

cant - определяем по входным и выходным значениям функцию

[In]  cant.remember(inp=5, expected=15, args=3)

[Out] [{'arity': '1', 'callable': '__mul__', 'input': 5, 'namespace': 'self'},
       {'arity': '1', 'callable': '__rmul__', 'input': 5, 'namespace': 'self'}]

     13.02.2016       Выпуск 112 (08.02.2016 - 14.02.2016)       Интересные проекты, инструменты, библиотеки

pysenteishon - управляем презентацией со смартфона

Проект позволяет просматривать презентацию в браузере, а также управлять им с телефона

     12.02.2016       Выпуск 112 (08.02.2016 - 14.02.2016)       Интересные проекты, инструменты, библиотеки

tryagain - модуль для повторения выполнения кода

Модуль подходит для повторного выполнения кода с каким-то условием. Например, что функция зависнет не более чем на 5 секунд

import tryagain

def unstable():
    ...

# retry calling 'unstable' until it returns without raising an exception
tryagain.call(unstable)

# limit to maximum 5 attempts
tryagain.call(unstable, max_attempts=5)

# only retry after specific exceptions
tryagain.call(unstable, exceptions=[ValueError, TypeError])

     12.02.2016       Выпуск 112 (08.02.2016 - 14.02.2016)       Интересные проекты, инструменты, библиотеки

requests-cache-latest - персистентный(постоянный) кэш для библиотеки requests

import requests
import requests_cache

requests_cache.install_cache('demo_cache')

Код:

for i in range(10):
    requests.get('http://httpbin.org/delay/1')

Отработает в разы быстрее