连接列表中的元素对

发布于 2021-01-29 19:26:43

我知道可以将一个列表连接成一个长字符串,如下所示:

x = ['a', 'b', 'c', 'd']
print ''.join(x)

显然,这将输出:

'abcd'

但是,我想做的就是简单地将列表中的第一个和第二个字符串连接起来,然后连接第三个和第四个字符串,依此类推。简而言之,从上面的示例中取而代之的是:

['ab', 'cd']

有没有简单的方法可以做到这一点?我可能还应该提到,列表中字符串的长度以及列表中字符串的数量都是不可预测的,尽管字符串的数量始终是偶数。因此原始列表也可能是:

['abcd', 'e', 'fg', 'hijklmn', 'opq', 'r']
关注者
0
被浏览
46
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以通过以下步骤使用切片符号:

    >>> x = "abcdefghijklm"
    >>> x[0::2] #0. 2. 4...
    'acegikm'
    >>> x[1::2] #1. 3. 5 ..
    'bdfhjl'
    >>> [i+j for i,j in zip(x[::2], x[1::2])] # zip makes (0,1),(2,3) ...
    ['ab', 'cd', 'ef', 'gh', 'ij', 'kl']
    

    同样的逻辑也适用于列表。字符串长度无关紧要,因为您只是将两个字符串加在一起。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看