为了账号安全,请及时绑定邮箱和手机立即绑定

在python列表的每个索引处插入整数

在python列表的每个索引处插入整数

慕尼黑的夜晚无繁华 2023-12-08 17:16:18
如何在每个索引的新列表中的以下列表的每个索引处插入整数“5”我有一个清单['2', '6', '8']并想按以下方式插入“5”:['5', '2', '6', '8']['2', '5', '6', '8']['2', '6', '5', '8']['2', '6', '8', '5']
查看完整描述

1 回答

?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

您可以使用列表理解,使用列表的切片往返每个索引:


>>> lst = ['2', '6', '8']

>>> [lst[:i] + ["5"] + lst[i:] for i in range(len(lst)+1)]

[['5', '2', '6', '8'],

 ['2', '5', '6', '8'],

 ['2', '6', '5', '8'],

 ['2', '6', '8', '5']]

或者使用*-unpacking,相同的结果:[[*lst[:i], "5", *lst[i:]] for ...]。两个版本都会创建一堆临时列表切片。另一种方法是使用循环,复制列表,然后调用insert; 两种方法每个列表都应该有~O(2n),所以它并没有真正产生区别。


查看完整回答
反对 回复 2023-12-08
  • 1 回答
  • 0 关注
  • 98 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信