繁体   English   中英

试图从 Python 的列表中删除特定值

[英]Trying to remove specific values from a list in Python

    FCF_margin2017 = 3.3
    FCF_margin2018 = 1.5
    FCF_margin2019 = 2.3
    FCF_margin2020 = 30
    
    fcf_margin_list = FCF_margin2017, FCF_margin2018, FCF_margin2019, FCF_margin2020
    
    
    sorted_fcf_margin_list = sorted(fcf_margin_list)
    
    value1 = sorted_fcf_margin_list[0]
    value2 = sorted_fcf_margin_list[1]
    value3 = sorted_fcf_margin_list[2]
    value4 = sorted_fcf_margin_list[3]
    
    value_list = value1, value2, value3, value4
    median_list = value2, value3
    
    median = sum(median_list)/2
    mean = sum(value_list)/2
    
    upper = median+mean 
    lower = median-mean
    
    def CheckForLess(fcf_margin_list, val): 
    
      for x in fcf_margin_list:
       if val <= lower: 
    
        if (CheckForLess(fcf_margin, val)): fcf_margin_list.remove()
    
        for x in fcf_margin_list:
         if val >= upper: 
          if (CheckForLess(fcf_margin, val)): fcf_margin_list.remove()


    fcf_margin_list 

此代码当前返回:

(3.3, 1.5, 2.3, 30)

这与原始列表相同,当我试图删除列表中大于上限和小于下限的值时。 鉴于它们符合我的指定要求,我如何 go 关于从列表fcf_margin_list中删除值?

我可能会创建一个只包含我想要的项目的新列表。

new_list = [item for item in original_list if item >= lower and item <= upper]

如果我愿意,我总是可以用新列表替换原来的列表,

original_list = new_list 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM