如何从python列表中提取满足特定条件的所有元素?
我有一长串大浮点数:如何从python列表中提取满足特定条件的所有元素?,python,list,numpy,Python,List,Numpy,我有一长串大浮点数: lis = [0.10593584063824,... ,9.5068763787043226e-34, 9.8763787043226e-34, 8.3617950149494853e-34] 如何在新数组中选择满足特定条件的所有数字?例如,我如何将a_constant>.95的所有数字提取到一个新列表中您可以使用列表理解: lis = [0.10593584063824,... ,9.5068763787043226e-34, 9.8763787043226e-34,
lis = [0.10593584063824,... ,9.5068763787043226e-34, 9.8763787043226e-34, 8.3617950149494853e-34]
如何在新数组中选择满足特定条件的所有数字?例如,我如何将
a_constant>.95
的所有数字提取到一个新列表中您可以使用列表理解:
lis = [0.10593584063824,... ,9.5068763787043226e-34, 9.8763787043226e-34, 8.3617950149494853e-34]
out = [x for x in lis if 0.65 > x > 0.95]
您可以使用列表:
lis = [0.10593584063824,... ,9.5068763787043226e-34, 9.8763787043226e-34, 8.3617950149494853e-34]
out = [x for x in lis if 0.65 > x > 0.95]
使用:
使用:
我会使用numpy——如果您在数据科学工作中使用它,首先,将列表转换为numpy数组,然后应用条件并将numpy数组转换回列表
import numpy as np
lis = [0.10593584063824e-34,2.5068763787043226e-34,9.5068763787043226e-34, 9.8763787043226e-34, 8.3617950149494853e-34]
#Convert the list into a numpy array
np_array = np.array([[lis]])
#filter the np array and convert back to a list
new_lis = (np_array[np_array > 3.7e-34]).tolist()
[9.506876378704323e-34, 9.8763787043226e-34, 8.361795014949486e-34]
我会使用numpy——如果您在数据科学工作中使用它,首先,将列表转换为numpy数组,然后应用条件并将numpy数组转换回列表
import numpy as np
lis = [0.10593584063824e-34,2.5068763787043226e-34,9.5068763787043226e-34, 9.8763787043226e-34, 8.3617950149494853e-34]
#Convert the list into a numpy array
np_array = np.array([[lis]])
#filter the np array and convert back to a list
new_lis = (np_array[np_array > 3.7e-34]).tolist()
[9.506876378704323e-34, 9.8763787043226e-34, 8.361795014949486e-34]
是的,但是常数呢?。。。。这和x一样吗?什么常数?是的,但是常数呢?。。。。这和x一样吗?什么常数?用过滤器
a=filter(lambda x:x>0.95,lis)
“…列出a_常量>0.95的所有数字”你这是什么意思?a_常量
是常量还是列表中的元素?这太令人困惑了!使用过滤器a=filter(lambda x:x>0.95,lis)
“…列出a_常量>0.95的所有数字”你这是什么意思?a_常量
是常量还是列表中的元素?这太令人困惑了!