现有一列表:
a = [1, 3, 4, 0, 1, 5, 5, 1, 5, 1, 5, 6, 2, 3, 1, 5, 3]
条件:
删除所有 5 元素前面的元素 1
在所有的 3 元素后面加上 3 个元素 2
该怎么操作?
更新:是两个条件同时满足,不是分别。
4 回答
鸿蒙传说
TA贡献1865条经验 获得超7个赞
a = [1, 3, 4, 0, 1, 5, 5, 1, 5, 1, 5, 6, 2, 3, 1, 5, 3]
','.join( [str(i) for i in a] ).replace('1,5', '5').replace('3', '3,2,2,2').split(',')
慕后森
TA贡献1802条经验 获得超5个赞
感谢 @土豆_612874 指正,不过使用 enumerate
会出现列表越界问题,
1.
for i in range(len(a)-1, 0, -1):
if a[i] == 5 and a[i-1] ==1:
a.pop(i-1)
print a
2.
for i in range(len(a)-1, -1, -1):
if a[i] == 3:
a.insert(i+1, 2)
a.insert(i+1, 2)
a.insert(i+1, 2)
print a
添加回答
举报
0/150
提交
取消