我試圖將字符串列表拆分爲包含這些字符串的不均勻長度的元組列表,每個元組包含最初用空字符串分隔的字符串。基本上我需要可以應用於列表的參數化分割。如果我的初始列表如下所示:將列表分解爲不均勻的元組
init = ['a', 'b', '', 'c', 'd e', 'fgh', '', 'ij', '', '', 'k', 'l', '']
此列表的最後一個元素始終是關閉''
。可以有連續的''
秒,這將被視爲單打。 我需要的結果是:
end = [('a', 'b'), ('c', 'd e', 'fgh'), ('ij',), ('k', 'l')]
我已經有醜陋的代碼,沒有工作和失控的範圍內,一旦名單被完全彈出:
end = []
while init[-1] == u'':
init.pop()
l = []
while init[-1] != u'':
l.append(init.pop())
end.append(tuple(l))
我想用內涵,但沒有成功嘗試解包參數列表,顛倒自引用列表,使用deque
隊列和各種代碼異味,現在我懷疑是否有意尋找(嵌套)理解解決方案?
這是任何尼斯'bool'更換lambda函數投字符串和得到類似的結果? – Felix