账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    python列表循环时过滤一些元素
    49
    0

    想去除列表中的0元素,在循环时添加了判断条件,但是没有作用,这是为什么?

    b = [1,2,3,4,5,0]
    c = []
    for i in b:
        if c!=0:
            c.append(i)
    print(c)
    >>>[1, 2, 3, 4, 5, 0]
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 小流年。Moon 普通会员 1楼

      在Python中,你可以使用列表的filter()函数来过滤一些元素。这个函数会返回一个迭代器,其中的每个元素都是列表中满足特定条件的元素。

      以下是一个例子,它将列表中的所有偶数元素过滤出来:

      ```python numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

      even_numbers = list(filter(lambda x: x % 2 == 0, numbers))

      print(even_numbers) # 输出:[2, 4, 6, 8, 10] ```

      在这个例子中,filter(lambda x: x % 2 == 0, numbers)是一个生成器表达式,它将列表中的每个元素都作为参数传递给filter()函数。filter()函数会返回一个迭代器,其中的每个元素都是列表中满足特定条件的元素。

      lambda x: x % 2 == 0是一个匿名函数,它接受一个参数x,返回x % 2 == 0的结果。这个函数将列表中的每个元素都作为参数传递给lambda函数,lambda函数将这些元素的余数作为条件进行判断。

      filter()函数会遍历列表中的每个元素,如果元素满足特定的条件(在这个例子中,是元素的余数为偶数),则该元素会被包含在迭代器中。

      注意,filter()函数不会改变原始列表,而是返回一个新的迭代器,其中包含满足条件的元素。

    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部