如何在Python列表中连接两个项目?

时间:2018-01-03 21:40:41

标签: python list

我有这个:

list = ['h', 'e', "'", 'l', 'l', 'o']

我想要这个:

list = ['h', "e'", 'l', 'l', 'o']

我想只加入两个列表元素。我怎么能这样做?

5 个答案:

答案 0 :(得分:4)

您可以在Python3中使用解压缩:

l = ['h', 'e', "'", 'l', 'l', 'o']
a, *b, c, d, e = l
new_l = [a, ''.join(b), c, d, e]

输出:

['h', "e'", 'l', 'l', 'o']

由于Python2不支持列表解包(*),您可以使用列表切片:

l = ['h', 'e', "'", 'l', 'l', 'o']
new_l = l[:1]+[''.join(l[1:3])]+l[3:]

输出:

['h', "e'", 'l', 'l', 'o']

答案 1 :(得分:2)

正如约翰戈登在评论中所说,最简单的方法可能就是这样:

l = list("he'llo")
l[1] += l[2]
del l[2]

答案 2 :(得分:1)

您可以定义自己的函数并使用.pop删除第二个元素:

def merge(myList, a, b):
    myList[a] = myList[a] + myList.pop(b)
    return myList

>>> merge(['h', 'e', "'", 'l', 'l', 'o'], 1, 2)
['h', "e'", 'l', 'l', 'o']

答案 3 :(得分:1)

试试这个

mp4box -add audio.mp4#audio video.mp4 -out video-and-audio.mp4

答案 4 :(得分:1)

您可以根据需要过滤结果:

永远不要将列表用作变量名称:

list_1 = ['h', 'e', "'", 'l', 'l', 'o']

print(list(filter(lambda x:x!="'",list_1)))

输出:

['h', 'e', 'l', 'l', 'o']

如果你想加入:

print("".join(list(filter(lambda x:x!="'",list_1))))

输出:

hello