iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python简明讲解filter函数的用法
  • 137
分享到

Python简明讲解filter函数的用法

2024-04-02 19:04:59 137人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录一、filter函数的定义二、filter函数实例求一个序列中大于零的元素组成的新序列求序列中非零数组成的新序列求字典中大于2的键组成的新序列求100以内既是3的倍数又是奇数的正

任何事情都是由量变到质变的过程,学习python也不例外。只有把一个语言中的常用函数了如指掌了,才能在处理问题的过程中得心应手,快速地找到最优方案。

一、filter函数的定义

filter函数是Python中常用的内置函数,调用无需加载库,直接使用即可。它主要用来根据特定条件过滤迭代器中不符合条件的元素,返回一个惰性计算的filter对象或迭代器。需要用list函数进行转换,才能得到符合的条件元素组成的新列表。

其基本调用语法如下:

filter(function or None, iterable)

function:函数,作用是对iterable中的每个元素判断是否符合特定条件。

None:不调用任何函数,只对可迭代对象中的元素本身判断真假,保留为真的元素。

iterables:可迭代对象(序列、字典等)。

二、filter函数实例

求一个序列中大于零的元素组成的新序列

我们先来看下filter函数不加list的结果,代码如下:

c = [-10, 28, 9, -5, 30, 5]
filter(lambda a:a>0, c)

得到结果:

<filter at 0x27950dbb9d0>

返回一个惰性计算的filter对象或迭代器。接下来看下用list函数进行转换会得到什么,代码如下:

c = [-10, 28, 9, -5, 30, 5]
list(filter(lambda a:a>0, c))

得到结果:

[28, 9, 30, 5]

从结果知,filter函数的作用是挑选出了序列c中大于0的元素组成了新的对象或迭代器。通过list函数进行转换,进而得到符合条件的元素组成的新列表。如果有朋友对代码中的lambda函数不熟悉,可以参考【Python常用函数】一文让你彻底掌握Python中的lambda函数。

求序列中非零数组成的新序列

在filter函数定义中提到,filter函数中参数None表示不调用任何函数,只对可迭代对象中的元素本身判断真假,保留为真的元素。

测试代码如下:

#找出序列中的非0数
c2 = [4, 9, 0, -5, -8, 7, 0]
list(filter(None, c2))

得到结果:

[4, 9, -5, -8, 7]

由于0在Python中默认为False,非0默认为True,所以在筛选过程中对0进行了过滤。

求字典中大于2的键组成的新序列

在filter函数定义中提到,它对可迭代对象进行处理,所以包括了列表和字典等对象。前两个例题都是对列表进行处理,本例看下对字典的处理。代码如下:

#找出字典中大于2的键
list(filter(lambda x:x>2, {1:'杨紫', 2:'刘诗雯', 3:'张继科', 4:'王明', 5:'刘明'}))

得到结果:

[3, 4, 5]

从结果知,filter函数对字典进行处理的时候,筛选的对象是字典的键,而不是字典的值。

求100以内既是3的倍数又是奇数的正整数

最后我们来看一个小学常常碰到的题,求100以内既是3的倍数又是奇数的正整数。代码如下:

#求100以内既是奇数又是3的倍数的正整数
import numpy as np
list(filter(lambda x:x%2!=0 and x%3==0, np.arange(1, 101)))

得到结果:

[3, 9, 15, 21, 27, 33, 39, 45, 51, 57, 63, 69, 75, 81, 87, 93, 99]

其中np.arange(1, 101))表示1到100公差为1的等差数列。

x%2!=0表示该数不能整除2,即为奇数。

x%3==0表示该数能整除3,即为3的倍数。

可以人工复核一下,发现Python得到的结果是正确的。

到此这篇关于Python简明讲解filter函数的用法的文章就介绍到这了,更多相关Python filter函数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python简明讲解filter函数的用法

本文链接: https://www.lsjlt.com/news/118940.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python简明讲解filter函数的用法
    目录一、filter函数的定义二、filter函数实例求一个序列中大于零的元素组成的新序列求序列中非零数组成的新序列求字典中大于2的键组成的新序列求100以内既是3的倍数又是奇数的正...
    99+
    2024-04-02
  • C++简明讲解缺省参数与函数重载的用法
    目录一、缺省参数1.1缺省参数概念1.2缺省参数分类二、函数重载2.1函数重载概念2.2名字修饰一、缺省参数 缺省参数形象来说就是"备胎"。 1.1缺省参数概念 ...
    99+
    2024-04-02
  • python中filter函数的用法示例
    python中filter函数主要是用来过滤序列,它的语法格式为“filter(function, iterable)”,参数function指的是判断函数,而参数iterable指的是可迭代对象;filter函数是通过function对i...
    99+
    2024-04-02
  • C++简明分析讲解引用与函数提高及重载
    目录详解引用引用的基本使用引用做函数参数引用做函数返回值常量引用引用的本质函数提高函数默认值函数占位参数函数重载及注意事项详解引用 引用的基本使用 语法:数据类型 &新变量名...
    99+
    2024-04-02
  • python中filter函数的用法示例代码
    目录描述语法实例描述 filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。 该接收两个参数,第一个为函数...
    99+
    2022-12-20
    python中filter函数用法 python filter函数
  • Go并发4种方法简明讲解
    一、goroutine 1、协程(Coroutine) Golang 在语言层面对并发编程进行了支持,使用了一种协程(goroutine)机制, 协程本质上是一种用户态线程,不需要操...
    99+
    2024-04-02
  • Python的filter函数怎么使用
    这篇文章主要介绍“Python的filter函数怎么使用”,在日常操作中,相信很多人在Python的filter函数怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python的filter函数怎么使用...
    99+
    2023-07-02
  • Python sqrt()函数用法说明
    1、开平方 函数 sqrt() 返回 x 的平方根(x > 0) 语法: import math math.sqrt( x ) 注意:此函数不可直接访问,需要导入math...
    99+
    2024-04-02
  • C语言简明讲解操作符++和--的使用方法
    目录一、++与--操作符的本质二、++与-- 操作符使用分析三、小结一、++与--操作符的本质 ++ 和 -- 操作符对应两条汇编指令 前置 变量自增(减)1取变量值 后置 取变量值...
    99+
    2024-04-02
  • Python中的imread()函数用法说明
    cv2方式: # -*- coding: UTF-8 -*- import cv2 """ cv2模块--图片的读入和显示 """ image_path="D:/Pycharm...
    99+
    2024-04-02
  • Python内置函数zip map filter的使用详解
    并行遍历zip zip会取得一个或多个序理为参数,然后返回元组的列表,将这些序列中的并排的元素配成对。 L1=[1,2,3,4] L2=[5,6,7,8] L3=zip(L1,L...
    99+
    2024-04-02
  • C语言简明讲解队列的实现方法
    目录前言队列的表示和实现队列的概念及结构代码实现束语前言 大家好啊,我又双叒叕来水博客了,道路是曲折的,前途是光明的,事物是呈螺旋式上升的,事物最终的发展结果还是我们多多少少能够决定...
    99+
    2024-04-02
  • Python学习之魔法函数(filter,map,reduce)详解
    目录filter() 函数map() 函数reduce() 函数filter() 函数 小实战今天的这一章节我们来学习一下,Python 中的三个高级函数,也被称之为 魔法...
    99+
    2024-04-02
  • python中的filter函数怎么使用
    在Python中,filter()函数用于过滤一个序列,返回符合条件的元素。filter()函数的基本语法如下:```filter(...
    99+
    2023-09-27
    python
  • 使用numpy函数的简明指南
    简单易懂的NumPy函数使用方法,需要具体代码示例 NumPy是Python中非常常用的科学计算库,它提供了丰富的函数和工具来处理数组和矩阵。在本文中,我们将介绍一些NumPy中常用的函数以及它们的使用方法,并通过具体的代码示例...
    99+
    2024-01-26
  • C语言简明讲解预编译的使用
    目录小复习1、内置符号2、自定义符号3、自定义宏4、条件编译小复习 预处理,预编译是编译的第一步。 会有三件基本的事情发生: 引入#include去除注释修改#define 1、内置...
    99+
    2024-04-02
  • python的四大函数讲解
    Python的四类函数:   1.普通函数   2.默认函数   3.关键字函数   4.收集参数   1.普通函数 a.定义的时候直接定义变量名 b.调用的时候直接把变量或者值放入指定位置              def 函数名(参...
    99+
    2023-01-30
    函数 python
  • matlab filter函数的用法是什么
    在MATLAB中,filter函数用于将信号通过数字滤波器进行滤波。它可以应用不同类型的滤波器(如低通、高通、带通等)来对信号进行频...
    99+
    2023-09-20
    matlab
  • PHP中number_format()函数的用法讲解
    number_format()函数用于格式化数字,并返回格式化后的字符串。语法:number_format(number, decimals, decimalpoint, separator)参数说明:- number:必需,要格式化的...
    99+
    2023-08-09
    php
  • Python函数介绍:filter函数的作用和示例
    Python函数介绍:filter函数的作用和示例Python是一种功能强大的编程语言,提供了许多内置的函数,其中之一就是filter函数。filter函数用于过滤列表中的元素,并返回满足指定条件的元素组成的新列表。在本文中,我们将介绍fi...
    99+
    2023-11-04
    示例 Python函数 filter函数
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作