我有一个简单的、总是连续排序的列表,如下所示:
all = [ 1, 2, 3, 4, 5, 6 ] # same as range( 1, 7 )
我也有current = 4
。最后我希望all
列表看起来像这样
altered = [ 1, 2, 5, 6 ]
所以发生的事情是它删除了current
数字和它之前 3
的数字。
current
也可以是1
and 0
,所以我想确保它不会对这两个值抛出错误。
除了例外current = 0
,更改后的列表是这样的
altered = [ 1, 2, 3, 4, 5 ]
这意味着current = 0
只需删除最后一个数字。
我觉得你可能可以用生成器编写一些花哨的东西,但我不擅长编写它们。
提前致谢!
在一行中执行此操作的奖励积分。如果current = 0
太麻烦,那么它也可能是current = -1
or current = 7
。
编辑:确保检查current = 1
,这应该是
altered = [ 2, 3, 4, 5, 6 ]