列表:
x = [1, 6, 2, 7, 1, 6, 1]
len(x)
> 7
我将如何拆分前3个和后3个列表,因此使用列表切片方法将值7保留下来?
输出
x[0:2,4:6] #<-- This doesn't work
> [1, 6, 2, 1, 6, 1] #<-- Expected output
答案 0 :(得分:-1)
满足OP重新请求:“是否有一种方法可以将其保持在相同的括号内?x [...,...]与该括号类似吗?”(不仅仅是使用x[:3]+x[-3:]
):
将numpy.delete
与numpy.r_
一起使用。指定您要保持这种方式的元素n1
的第一个数和n2
元素的最后一个数
import numpy as np
x = [1, 6, 2, 7, 1, 6, 1]
n1 = 3 # Keep first n1 elements
n2 = 3 # Keep last n2 elements
print(list(np.delete(x,(np.r_[n1:len(x)-n2])))) # [1 6 2 1 6 1]
答案 1 :(得分:-1)
您可以这样做:x [0:3] + x [4:7]或x [:3] + x [-3:]。第二个从最后一个获取前三个元素,而从右边获取前三个元素。