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