python学习之路03(函数)

到时再记录

3.内置函数-高阶函数

1.filter(func,sequence)接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新迭代器(在python3中),(在python2中就返回一个list)

li = [‘a‘,‘b‘,‘c‘]

def f(s):  # 定义一个过滤函数
    if s != ‘a‘:
        return s

re = filter(f,li)  # 使用filter函数将列表中的值分别传入函数中,不符合条件的就过滤,返回是一个迭代器
print(re)
for i in re:  # 迭代器通过for循环读取
    print(i)
print(list(re))  # 将迭代器强制转换为list
<filter object at 0x00000000006E03C8> b c

2.map(func,sequence)接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,返回一个新迭代器(在python3中),(在python2中就返回一个list)

li = [‘a‘,‘b‘,‘c‘]

def f(s):  # 定义一个函数
    return s + "zengwenhai"

re = map(f,li)  # 使用map函数将列表中的值分别传入函数中,对列表中的每个值进行处理
print(re)
for i in re:  # 迭代器通过for循环读取
    print(i)
print(list(re))  # 将迭代器强制转换为list
<map object at 0x00000000007A0470> azengwenhai bzengwenhai czengwenhai

3.reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值



from functools import reduce  # 在python中需要导入

def add(x,y):
    return x + y

print(reduce(add,[1,3,5,7,9]))  # reduce函数将列表中的值分别传入函数中,处理后放入列表中,再次传入值
# 先计算头两个元素:f(1, 3),结果为4;
# 再把结果和第3个元素计算:f(4, 5),结果为9;
# 再把结果和第4个元素计算:f(9, 7),结果为16;
# 再把结果和第5个元素计算:f(16, 9),结果为25;
# 由于没有更多的元素了,计算结束,返回结果25。

25

 

原文地址:https://www.cnblogs.com/zengwenhai/p/8846835.html

时间: 2024-11-05 18:48:37

python学习之路03(函数)的相关文章

Python学习之路6?函数,递归,内置函数

一python中的函数 函数是逻辑结构化和过程化的一种编程方法. python中函数定义方法: def test(x): "The function definitions" x+=1 return x def:定义函数的关键字 test:函数名 ():内可定义形参 "":文档描述(非必要,但是强烈建议为你的函数添加描述信息) x+=1:泛指代码块或程序处理逻辑 return:定义返回值 调用运行:可以带参数也可以不带 函数名() 二 为何使用函数 背景提要 现在老

python学习之路(四) ---函数

一.函数的作用 当我们在写一个复杂的程序的时候,可以能会在很多地方上用到相同的功能,写起来代码量非常大,通过函数可以解决大量的代码冗余,我们只需要将各个功能封装到一个函数内,需要的时候就调用这个函数就可以,这样写起来的代码可读性也得到很大的提升,而且当我们后续需要增添新功能的时候也非常的方便,维护起来更加的方便. 二.内置函数和自定义函数   内置函数 python中为我们提供的许多的内置函数,可以到https://www.runoob.com/python/python-built-in-fu

Python学习之路:函数参数及调用

return:结束函数并返回值 没有return时:返回None 返回值数=1时:返回具体值 返回值是数字+字符串+列表等:返回一个元组 需要return是需要函数完整调用 def test1(): print('in the test1') def test2(): print('in the test2') return 0 #结束函数并返回0 def test3(): print('in the test3') return 1,'hello',['alex','wupeiqi'], {'

python学习之路03

一.常量和变量 1.python中的数据类型 分类: ? Number:数字型[整型,浮点型,复数] ? String:字符串型 ? Boolean:布尔型[True,False] ? None:空值 ? list:列表 ? tuple:元组 ? dict:字典 ? set:集合 整型:可以处理任意大小的整数,支持二进制 浮点型:在计算机底层,浮点型表示采用的是科学计数法[123.456---->1.23456e2] 复数:数学上:a+bi,------->a+bj 字符串:是以单引号或者双引

Python学习之路5 - 函数

函数 定义方式: def func(): "这里面写函数的描述" 这里写代码 return x #如果没有返回值就叫"过程",函数和过程的区别就是有无返回值 实例 def fun1(): "这里是测试" print('这是第一个函数') return 0 fun1() #调用函数 函数传参 def test(x,y,z): print(x) print(y) print(z) test(3,3,5) #这样传的参数叫做位置参数, 位置是一一对应的

Python学习之路-装饰器&生成器&正则表达式

装饰器 通俗的讲,装饰器就是在不改变源代码基础上,给源代码增加新功能. 不改变函数的源代码.调用方式.返回值等,给函数增加新功能. 经典案例:登录装饰器, def login_decorator(func):     def inner():         if USER_TEMP["status"] == False:             print("\033[31;1m用户未登录,请先登录\033[0m")             login_atm()

Python学习之路——强力推荐的Python学习资料

资料一:程序媛想事儿(Alexia)总结 Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl.Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理内存使用.它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务. Python上手虽然容易,但与其它任何语言一样要学好Python并非一日之功.我的Pyth

Python 学习之路(二)

Python 学习之路(二) 以下所用的是Python 3.6 一.条件语句 简单判断 1 if 判断条件: 2 执行语句-- 3 else: 4 执行语句-- 复杂判断 1 if 判断条件1: 2 执行语句1-- 3 elif 判断条件2: 4 执行语句2-- 5 elif 判断条件3: 6 执行语句3-- 7 else: 8 执行语句4-- 二.循环语句 2.1 while语句 和其他语言一样,不同的是多了else语句.在 python 中,while - else 在循环条件为 false

Python 学习之路(三)

Python 学习之路(三) 以下所用的是Python 3.6 一.集合部分 集合是一个无序的,不重复的数据集合,主要用来去重,以及关系测试:交集,差集,并集等 1.1 关系操作 1.1.1 列表去重 可以给列表去重,例如: 1 set_demo = [1,2,3,4,5,3,2,1] # 列表 2 set_demo = set(set_demo) # 转换成集合,来去重 3 print(set_demo) 1.1.2 取交集 intersection()方法 可以获得两个集合的交集部分,例如: