Python:过滤列表中的unicode,列表只是字符串

时间:2017-04-18 19:47:10

标签: python string python-2.7 list lambda

说我有以下列表列表。

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'] 

1 个答案:

答案 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']