[英]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.