Собрали в одном месте самые важные ссылки
читайте нас в Twitter
{% load django_vimeo_tags %} The video tag: {% vimeo instance.video width=600 as video %} <video width="600" loop="loop" autoplay="autoplay" poster="{{ video.optimal_picture.link }}"> <source src="{{ video.optimal_file.link_secure }}" type='{{ video.optimal_file.type }}'> {% trans 'tag "video" not supported by your browser' %} <a href="{{ video.optimal_download.link }}">{% trans 'download video' %}</a>. </video> {% endvimeo %} Or embed shortcut: {% vimeo instance.video width=600 %}
from pickleshare import * db = PickleShareDB('~/testpickleshare') db.clear() print "Should be empty:",db.items() db['hello'] = 15 db['aku ankka'] = [1,2,313] db['paths/are/ok/key'] = [1,(5,46)] print db.keys()
Библиотека поддерживает несколько базовый типов данных. Ниша библиотеки - хранение сложных структур данных
import serial import streamexpect # timeout=0 is essential, as streams are required to be non-blocking ser = serial.Serial('COM1', baudrate=115200, timeout=0) with streamexpect.wrap(ser) as stream: stream.write('\r\nuname -a\r\n') match = stream.expect_bytes('Linux', timeout=1.0) print(u'Found Linux at index {}'.format(match.start))
#!/usr/bin/env python3 import random import logging import tornadoredis from tornado import gen, ioloop from torrelque import Torrelque logger = logging.getLogger(__name__) @gen.coroutine def produce(): redis = tornadoredis.Client() queue = Torrelque(redis, ioloop.IOLoop.current()) while True: for _ in range(5): task = {'value': random.randint(0, 99)} logger.debug('Produced task %s', task) yield queue.enqueue(task) yield gen.sleep(10) @gen.coroutine def process(task_data): logger.debug('Consmed task %s', task_data) yield gen.sleep(1) @gen.coroutine def consume(): redis = tornadoredis.Client() queue = Torrelque(redis, ioloop.IOLoop.current()) while True: task_id, task_data = yield queue.dequeue() if not task_id: continue try: yield process(task_data) yield queue.release(task_id) except Exception: logger.exception('Job processing has failed') queue.requeue(task_id, delay = 30) @gen.coroutine def main(): for _ in range(4): ioloop.IOLoop.current().spawn_callback(consume) yield produce() if __name__ == '__main__': logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s %(message)s') ioloop.IOLoop.instance().run_sync(lambda: main())
Утилита позволяет установить программную задержку, процент потерь
Jug позволяет писать код, который будет разбит на задачи, задачи будут выполнены на различных процессорах. Вы можете думать об этом как о легковесном map-reduce.