Python filter用法

來源:互聯網
上載者:User

標籤:import   ems   返回   yield   lam   func   ret   iterator   過濾   

1 class filter(object)2  |  filter(function or None, iterable) --> filter object3  |  4  |  Return an iterator yielding those items of iterable for which function(item)5  |  is true. If function is None, return the items that are true.

filter讀入iterable所有的項,判斷這些項對function是否為真,返回一個包含所有為真的項的迭代器。如果function是None,返回非空的項。

1 In [2]: import re2 In [3]: i = re.split(‘,‘,"123,,123213,,,123213,")3 In [4]: i4 Out[4]: [‘123‘, ‘‘, ‘123213‘, ‘‘, ‘‘, ‘123213‘, ‘‘]

這時,列表i內包含空串。

1 In [7]: print(*filter(None, i))2 123 123213 123213

這時filter把列表中的空串過濾掉了,得到一個只含非空串的迭代器。

In [9]: print(list(filter(lambda x:x==‘‘, i)))[‘‘, ‘‘, ‘‘, ‘‘]

由於lambda對空串為真,所以filter把非空串過濾掉,只剩下空串。

Python filter用法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.