提取所有大于'm'且小于'n'的列表元素

问题描述 投票:0回答:7

这里是查找所有大于

m
且小于
n
的列表元素的代码。

注意:

m
n
是作为输入提供的整数值

输入示例:

[ 1, 5, 9, 12, 15, 7, 12, 9 ] (array)

6 (m)

12 (n)

输出示例:

[ 9 7 9 ]

这是我的代码:

import ast 

input_list=ast.literal_eval(input())

m=int(input())

n=int(input())

import numpy as np

array_1 = np.array(input_list)

final_array =array_1[array_1>m array_1<n]

print(final_array)
python
7个回答
2
投票

如果 numpy 是强制性的,那么你可以这样做:

import ast 
import numpy as np

input_list=ast.literal_eval(input())

m=int(input())

n=int(input())


array_1 = np.array(input_list)

final_array =array_1[(array_1>m)&(array_1<n)]

print(final_array)

1
投票

使用 & 运算符

import numpy as np
import ast
input_list=ast.literal_eval(input())
m=int(input())
n=int(input())
array_1 = np.array(input_list)
final_array  = array_1[(array_1 > m) & (array_1 < n)]
print(final_array)

0
投票

老实说,这看起来就像我在为你做作业,但无论如何,试试这个:

import ast 

input_list= ast.literal_eval(input())
m=int(input())
n=int(input())

output_list = [x for x in input_list if m<x<n]
print(output_list)

它使用列表迭代来检查每个项目的条件。


0
投票

第 1 步:知道您可以使用其他数组对数组进行索引。

x = np.arange(50) * 2
indexing_array = np.array([3, 5, 9])
print(x[indexing_array])

第 2 步:了解您可以使用布尔数组对数组进行索引,并且可以通过使用数组作为参数之一指定条件来创建布尔数组。

x = np.arange(50)
# A boolean array
print(x > 5)
# Index x with a boolean array
print(x[x > 5])

第 3 步:创建条件,使布尔数组从原始数组中准确索引出您想要的内容。

x = np.arange(50)
m, n = 5, 20
print(x[(m < x) & (x < n)])

0
投票
import ast 

input_list=ast.literal_eval(input())
m=int(input())
n=int(input())

import numpy as np

array_1 = np.array(input_list)
final_array =array_1[array_1>m array_1<n]
print(final_array)

0
投票

m=int(输入()) n=int(输入())

将 numpy 导入为 np array_1 = np.array(input_list) Final_array = array_1[(array_1>m)&(array_1

打印(最终数组)


-2
投票
import numpy as np
n = int(input())
b=int(n/2)
a=np.array([[0,1], [1,0]])
m=np.tile(a,(b,b))
print(m)
© www.soinside.com 2019 - 2024. All rights reserved.