从 Python 中的列表中删除 falsy 值

在python中,评估为False的值被视为Falsy值。值为False,None,0和“”。

在这里,我们正在实现一个python程序,以从字符串中删除伪造的值。要删除这些值,我们正在使用filter() 方法,它将滤除虚假值。

示例


    Input:
    [10, 20, 0, 30, 0, None]

    Output:
    [10, 20, 30]

    Input: 
    [False, None, 0, "", "Hello", 10, "Hi!"]
    
    Output: 
    ['Hello', 10, 'Hi!']


程序:


# 从Python列表中删除虚假值 
def newlist(lst):
  return list(filter(None, lst))

# 主要代码
list1 = [10, 20, 0, 30, 0, None]
list2 = [40, False, "Hello", "", None]
list3 = [False, None, 0, "", "Hello", 10, "Hi!"]

# 打印原始字符串
print("list1: ", list1)
print("list2: ", list2)
print("list3: ", list3)

# 删除虚假值并打印
print("newlist(list1): ", newlist(list1))
print("newlist(list2): ", newlist(list2))
print("newlist(list3): ", newlist(list3))


输出结果


list1:  [10, 20, 0, 30, 0, None]
list2:  [40, False, 'Hello', '', None]
list3:  [False, None, 0, '', 'Hello', 10, 'Hi!']
newlist(list1):  [10, 20, 30]
newlist(list2):  [40, 'Hello']
newlist(list3):  ['Hello', 10, 'Hi!']