如何用Python列表推导式在列表每个元素后添加n个指定元素
使用Python列表推导式给每个元素后添加n个指定元素
直接用嵌套的列表推导式就能实现需求,核心代码如下:
result = [item for elem in original_list for item in [elem] + [element] * n]
逻辑说明
外层遍历原列表的每个元素elem,对每个elem,我们生成一个临时列表:[elem]加上n个指定元素element组成的列表,接着内层遍历这个临时列表,把所有元素依次放入结果列表,自然就实现了每个原元素后跟着n个指定元素的效果。
示例验证
假设原列表 original_list = ['A', 'B', 'C', 'D', 'E'],指定元素 element = '':
- 当
n = 1时,运行代码得到:['A', '', 'B', '', 'C', '', 'D', '', 'E', ''] - 当
n = 2时,运行代码得到:['A', '', '', 'B', '', '', 'C', '', '', 'D', '', '', 'E', '', '']
另外这个写法兼容n=0的情况,此时会直接返回原列表,逻辑完全自洽。
内容的提问来源于stack exchange,提问作者muw
相关产品推荐
相关产品推荐

