jartasa
Окт. 7, 2009 00:02:45
Есть список строк.
Вида:
и т.д.Нужно разбить это список на такой список:
[,]
Подскажите самый удобный способ разбиения.Я понимаю что можно обойти этот список в цикле,применить сплит и сохранять этот всё в другой список.Но мне попадался на глаза очень красивый способ,не могу найти где я его видел.
pyuser
Окт. 7, 2009 09:27:12
lst = ["строка:строка2","строка3:строка4","строка5:строка6"]
result = zip(*[x.split(":") for x in lst])
jartasa
Окт. 7, 2009 21:18:35
Спасибо,а теперь приведите пример со словарями,если не сложно.
{“слово1”:“слово2”}
pasaranax
Окт. 7, 2009 21:23:37
dic = {"слово1":"слово2", "слово3":"слово4", "слово5":"слово6"}
result = zip(*[(key, value) for (key, value) in dic.items()])
jartasa
Окт. 7, 2009 22:26:20
self.syn = zip(*)
ValueError: too many values to unpack
Можно как-нибудь побороть ?Список состоит из 100000 записей.
pasaranax
Окт. 7, 2009 23:46:04
Если ты будешь более внимательным, то найдешь различие между моим и своим примерами.
jartasa
Окт. 8, 2009 00:32:30
pasaranax
Если ты будешь более внимательным, то найдешь различие между моим и своим примерами.
Как бы мне надо было из списка в словарь,насколько я помню в списках нет items.
Dimka665
Окт. 8, 2009 09:33:10
pasaranax
dic = {"слово1":"слово2", "слово3":"слово4", "слово5":"слово6"}
result = zip(*[(key, value) for (key, value) in dic.items()])
result = zip(*dic.iteritems())
так чтоли?
dic = ["слово1:слово2", "слово3:cлово4", "слово5:cлово6"]
result = dict(x.split(":") for x in dic)
jartasa
Окт. 8, 2009 10:45:01
ValueError: dictionary update sequence element #0 has length 1; 2 is required
Dimka665
Окт. 8, 2009 10:53:30
отсутствует “:” в строке