我有一个数组x = [3,5,6,11,18,24,29]我想从x中提取大于5小于等于24的元素
我该怎么做呢?
x = [3, 5, 6, 11, 18, 24, 29]
selected = [i for i in x if i>5 and i<=24]
print(selected)
如果您使用/更喜欢numpy,您可以使用np.where():
x[np.where((x > 5) & (x <= 24))]
或只是:
x[(x > 5) & (x <= 24)]
结果:
array([ 6, 11, 18, 24])
如果您需要做的只是提取大于5小于24的所有元素/数字,则必须使用for/while循环。
对于您的问题,最好使用for循环,因此代码将看起来像这样:
x = [3, 5, 6, 11, 18, 24, 29]
new_lst = []
for number in x:
if number > 5 and number < 24:
new_lst.append(number)
你可以在这里阅读。append()函数。