3
我有一个列表[ 'a' , 'b' , 'c' , 'd']
。我如何获得其顺序连接两个字母即ouptut应该是蟒蛇[ 'ab', 'bc' , 'cd']
轻松地在列表而不是列表解析中手动循环和加入如何在python中顺序合并列表中的元素
我有一个列表[ 'a' , 'b' , 'c' , 'd']
。我如何获得其顺序连接两个字母即ouptut应该是蟒蛇[ 'ab', 'bc' , 'cd']
轻松地在列表而不是列表解析中手动循环和加入如何在python中顺序合并列表中的元素
使用zip
:
In [13]: ["".join(seq) for seq in zip(lst, lst[1:])]
Out[13]: ['ab', 'bc', 'cd']
或者因为你只是想连接两个字符,你还可以使用add
操作,通过以适用于字符对附加功能的使用itertools.starmap
:
In [14]: from itertools import starmap
In [15]: list(starmap(add, zip(lst, lst[1:])))
Out[15]: ['ab', 'bc', 'cd']
的只有一行代码就足够了:
a = ['a','b','c','d']
output = [a[i] + a[i+1] for i in xrange(len(a)) if i < len(a)-1]
print output
我太慢了...良好的工作:P –
或更好:'[X + Y的X,Y拉链(LST,LST [1:])]'? – phynfo