2017-04-18 61 views
1

說我有一個像下面這樣的列表的列表。Python:將完整的unicode和列表過濾器列表只是字符串

lst = [[u'1'], [[], [u'Qjfe dw Dvrferk (bfw)'], []], [u'86,865,281'], [u'$22.34'], [u'-0.31'], [u'-1.37']] 

什麼是最好的方法(最好使用lambda)將它變成像這樣的字符串列表。

lst = ['1', 'Qjfe dw Dvrferk (bfw)', '86,865,281', '$22.34', '-0.31', '-1.37'] 
+0

關於第二個想法,我可以使用Unicode的一個列表,而不是字符串,如果它更容易使用。 – ns533

+0

您是否可以爲每個子列表添加多個項目? –

回答

4

看起來像是一個深深地壓在我身上。

def deep_flatten(L): 
    for e in L: 
     if isinstance(e, list): 
      for e in deep_flatten(e): 
       yield e 
     else: 
      yield e 

lst = [[u'1'], [[], [u'Qjfe dw Dvrferk (bfw)'], []], [u'86,865,281'], [u'$22.34'], [u'-0.31'], [u'-1.37']] 

list(deep_flatten(lst)) 

結果:

[u'1', u'Qjfe dw Dvrferk (bfw)', u'86,865,281', u'$22.34', u'-0.31', u'-1.37'] 
相關問題