Мы недавно сделали изрядное количество сравнения Velocity и Memcached. В ореховой скорлупе мы нашли, что Скорость была 3x - 5x медленнее, чем Memcached, и (еще более кардинально) это в настоящее время не имеет поддержки мультиполучить операции. Таким образом, в данный момент я рекомендовал бы идти с Memcached. Кроме того, другой урок, который мы извлекли, был то, что самая медленная операция в распределенном кэшировании является сериализацией и десериализацией (по крайней мере, в ASP.NET). Незавершенный кэш ASP.NET является порядком величин быстрее. Таким образом, необходимо выбрать кэширующиеся стратегии намного более тщательно.
Только для Python 2.x (спасибо Алекс):
yourdict = {}
# ...
items = yourdict.items()
См. http://docs.python.org/library/stdtypes.html#dict.items для подробностей.
Только для Python 3.x (взято из Ответ Алекса ):
yourdict = {}
# ...
items = list(yourdict.items())
В Python 2. *
, thedict.items ()
, как в ответе @ Andrew. В Python 3. *
, list (thedict.items ())
(поскольку там items
- это просто повторяющееся представление, а не список, вам нужно вызвать явно укажите в нем
, если вам нужен именно список).
Для списка кортежей:
my_dict.items()
Однако если все, что вы делаете, это итерация по элементам, часто предпочтительнее использовать dict.iteritems ()
, который более эффективен с точки зрения памяти, поскольку возвращает только один элемент за раз, а не все элементы сразу:
for key,value in my_dict.iteritems():
#do stuff