Py中去除列表中小于某个数的值

Posted CDPJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Py中去除列表中小于某个数的值相关的知识,希望对你有一定的参考价值。

### Py去除列表中小于某个数的值
print(**10,Py去除列表中小于某个数的值,**10)
nums = [2,3,4,10,9,11,19,14]
print(**10,remove之后改变了索引顺序,所以结果不正确!,**10)
for i in nums:
    if i<5:
        nums.remove(i)
print(nums)    
print(**10,pop之后改变了索引顺序,所以结果不正确!,**10)
for i in nums:
    if i<5:
        nums.pop(i)
print(nums)    
print(**30,下面正式描述方法,**30)

print(**10,方法1: 新申请一个数组容纳操作后的值,**10)
newnums = []
for i in nums:
    if i>=5:
        newnums.append(i)
#print(nums)
print(删除 < 5 后的值 = ,newnums)    
###
print(**10,方法1.1: 利用列表推导式,此法还是相当新申请一个数组容纳操作后的值 + 附件了1个条件,**10)
newnums = [i for i in nums if i>=5]        
print(newnums)    
###
print(**10,方法2: filter函数 ,**10)
newnums = list(filter(lambda x:x>=5,nums))
print(newnums)
###
print(**10,方法3: 将list转化为矩阵,numpy ,**10)
import numpy as np
nums = [2,3,4,10,9,11,19,14]

nums = np.array(nums)

nums = nums[nums>=5]
#n1 = np.array(newnums)
print(nums)

运行结果:

********** Py去除列表中小于某个数的值 **********
********** remove之后改变了索引顺序,所以结果不正确! **********
[3, 10, 9, 11, 19, 14]
********** pop之后改变了索引顺序,所以结果不正确! **********
[3, 10, 9, 19, 14]
****************************** 下面正式描述方法 ******************************
********** 方法1: 新申请一个数组容纳操作后的值 **********
删除 < 5 后的值 =  [10, 9, 19, 14]
********** 方法1.1: 利用列表推导式,此法还是相当新申请一个数组容纳操作后的值 + 附件了1个条件 **********
[10, 9, 19, 14]
********** 方法2: filter函数  **********
[10, 9, 19, 14]
********** 方法3: 将list转化为矩阵,numpy  **********
[10  9 11 19 14]
[Finished in 0.6s]

以上是关于Py中去除列表中小于某个数的值的主要内容,如果未能解决你的问题,请参考以下文章

Python3去除列表中小于0的数代码出现问题

matlab如何统计矩阵中大于或小于某数的元素个数?

获得小于某个数的 2 的幂的最快方法是啥?

15中间数

201612-1 中间数

列出小于等于某个数的全部质数