2019-04-23 21:47
采纳率: 100%
浏览 3.8k

用python实现单个列表中相邻元素的合并,列表中的最后一个元素为所有元素的组合

如["北京","师范","大学"]
结果:["北京师范","师范大学","北京师范大学"]
a = ["北京","师范","大学"]
b=a.copy()

for i in range(len(b)):
if i<(len(b)-1):
b[i]=b[i]+b[i+1]

del(b[-1])
b.append(a[0]+a[1]+a[2])
print(b)
除了这种方式以外,如果有多个列表呢 如何实现 请教各位 感谢

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2019-04-23 23:56
    已采纳
    # encoding: utf-8
    
    
    if __name__ == "__main__":
        a = ["a", "b", "c", "d"]
        r = list(map(lambda (x, y) : x + y, zip(a[0:-1],a[1:])))
        r.append(''.join(a))
        print(r)
    

    ['ab', 'bc', 'cd', 'abcd']

    打赏 评论
  • 2019-04-23 22:39

    a = ["北京","师范","大学"]
    b=a.copy()
    c=[a[i]+b[i+1] for i in range(len(a)-1)]
    c.append("".join(a))
    print(c)
    这个是单个列表的,如果是二维列表呢 如何实现呢

    打赏 评论

相关推荐 更多相似问题