Форум сайта python.su
0
Всем привет
У меня вопрос, как проще и оптимальнее решить задачу:
Допустим, есть обычный словарь ключ -> значение (my_dict)
Нужно передать в метод стороннего апи список значений my_dict (без ключей). Метод вернет модифицированный список, который нужно привязать к ключам my_dict.
Как я понимаю, словарь - это неупорядоченный тип, поэтому я разбивал словарь my_dict на 2 списка: ключи и значения, передавал список значений в api, потом делал zip списка ключей со списком, полученным от api.
Но, может, есть более элегантные и быстрые способы?
Спасибо
Офлайн
7
Вы все делали правильно. Что касается элегантности, то это касается непосредственно кода, который, с одной стороны - прост, с другой стороны - короток, с третьей - гениален.
Офлайн
9
Офлайн
253
maxibelloПомоему более красивый способ (если вы не фанат суперпроизводительности) это переписать если это возможно функцию чтобы она один элемент модифицировала а не список.
Но, может, есть более элегантные и быстрые способы?
class Ta: ... d={1:Ta(2),2:Ta(3)} def f(li): for i in li: li.x+=2 [f(i) for i in d.values()] #or
toolz.dicttoolz.valmap(d,f)
Отредактировано doza_and (Авг. 30, 2015 16:26:31)
Офлайн