Python3 实用的内置函数

本文深入解析Python3中lambda(), map(), filter(), reduce()等关键内置函数的使用方法与实例,涵盖匿名函数、序列处理、条件筛选及数据累加等核心功能,适合初学者与进阶者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python3 实用的内置函数

    本文以lambda()、map()、filter()、reduce()这四个关键函数为主,包括其他一些常见的内置函数。


    1.lambda() #匿名函数

          syntax: lambda [arg1 [,arg2,.....argn]]:expression

#比如该功能函数匿名函数一句话就能实现
def calc(x):
    return x+1
res=calc(10)
print(res)
输出: 11

#匿名函数实现
func = lambda x:x+1
print(func(10))
输出: 11

#lambda冒号前的x为形参,冒号后的为实参。

    2.map() #仅一次处理序列中的每个元素,得到的结果是一个'列表',该'列表'元素个数及位置与原来一样

        syntax: map(function, iterable, ...)

eg.让列表 1-5 的元素自加1
#第一种方法
def add_one(x):
    return x+1
num_list=[1,2,3,4,5]
print(list(map(add_one,num_list)))
输出: [2, 3, 4, 5, 6]

#lambda结合map实现
num_list=[1,2,3,4,5]
print(list(map(lambda x:x+1,num_list)))
输出:[2, 3, 4, 5, 6]

    3.filter() #遍历序列中的每个元素,判断每个元素得到布尔值,如果是True则留下来

            syntax: filter(function, iterable)

#输出列表 1-10 中的偶数
num_list=[1,2,3,4,5,6,7,8,9,10]
def double_n(x):
    return x%2==0

def filter_test(func,list):
    ret=[]
    for p in list:
        if func(p):
            ret.append(p)
    return ret
res=filter_test(double_n,num_list)
print(res)
输出:[2, 4, 6, 8, 10]

#用filter加lambda实现
res=list(filter(lambda x:x%2==0,num_list))
print(res)
输出:[2, 4, 6, 8, 10]

    4.reduce() # 用传给 reduce 中的函数先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果

         syntax: reduce(function, iterable[, initializer])

#实现 1-3 列表中元素的总和
from functools import reduce  #python需要加载该模块否则标红.
def auto_add(x,y):
        return x + y
print(reduce(auto_add,[1,2,3]))
输出: 6

#reduce结合lambda实现
from functools import reduce
print(reduce(lambda x,y:x+y,[1,2,3]))
输出:6

一些常见的内置函数

all() #把序列当中每一个元素拿出来做布尔运算,只能单个参数.(0|空|NULL)为假
eg. 
print(all([1,2]))
print(all([0]))
输出:
True
False

any() #只要有一个为真全为真.
eg.
print(any([1,2]))
print(any([1,0]))
输出:
True
True

进制转换
bin() #十进制转换成二进制.
hex() #十进制转换成十六进制.
oct() #十进制转换成八进制.

bool() #判断布尔值,真则Ture,反之.

chr()           #按照ascsi码打印字符.
eg. 
print(chr(65))
输出:
A

dir()           #打印某个对象有哪些方法.
eg. 
print(dir(all))
输出:['__call__', '__class__', '__delattr__', '__dir__', ....等等

divmod(10,3) #10表示一共有多少条记录,3表示一页放多少条记录

time.sleep(10) #休息十秒

help(all) #打印all方法

globals() #打印全局变量

locals() #打印局部变量(当前级别下的环境变量)

eval() #将字符串中的数据结构提取出来
eg.将字符串转成
dic = {'name': 'hehe'}
dic_str = str(dic)
d1 = eval(dic_str)
print(d1['name'])
输出:
hehe

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值