是否可以从每个列表中提取每个单独的字符串,并将其组合为一个字符串,然后拥有一个字符串列表?而不是列表中的字符串列表?
names = ['red', 'barn'], ['barn'], ['front', 'porch'], ['white', 'farm', 'house']]
预期输出如下:
names = ['red barn', 'barn', 'front porch', 'white farm house']
以下是我尝试过的方法
for name in names: names = " ".join(name) print(names)此代码的输出为
white farm house
为什么这只连接列表中的最后一个元素?
发布于 2019-03-05 05:32:15
您将覆盖每个循环的名称,因此名称的最后一个值是“白色农舍”。
试着这样做:
l_out = [' '.join(x) for x in names]
print(l_out)输出:
['red barn', 'barn', 'front porch', 'white farm house']或者你可以按照你正在尝试的方式去做:
l_out = []
for name in names:
l_out.append(' '.join(name))
print(l_out)输出:
['red barn', 'barn', 'front porch', 'white farm house']https://stackoverflow.com/questions/54988788
复制相似问题