更优雅/ Python化的列表解包方式?

时间:2018-08-23 09:38:09

标签: python list

是否有更优雅/ Python化的方法来解压缩此列表?

feature_set = [['flew'], ['homes'], ['fly home']]

对此:

flew|homes|fly home

没有这个丑陋的代码:

output = ''
for feature in feature_set:
    if len(feature) < 2: output += ''.join(feature) + '|'
    if len(feature) > 1: output += ' '.join(feature) + '|'
print(output[:-1])

3 个答案:

答案 0 :(得分:2)

使用chain.from_iterable展平列表,然后使用str.join

例如:

from itertools import chain
feature_set = [['flew'], ['homes'], ['fly home']]

print("|".join(chain.from_iterable(feature_set)))

输出:

flew|homes|fly home

答案 1 :(得分:0)

我希望你想要这样的东西。

'|'.join([inList[0] for inList in feature_set])

答案 2 :(得分:0)

首先URLs for scraping: join每个内部列表的每个元素,然后再次map以得到join结果

map