python函数
文章目录
- 函数
- 函数的入参
- 匿名函数
- 高级函数
- map
- sorted
- filter
- reduce
- 内置函数
函数
函数的入参
不定长入参
*args
:以元组的形式接收按位置的传参def test(x,y,*args):
print(x)
print(y)
print(args)
test(1,2) # x=1,y=2,args=()
test(1,2,3,4,5) # x=1,y=2,args=(3,4,5)
**kwargs
:以字典的形式接收按关键字的传参def test(x,y,**kwargs):
print(x)
print(y)
print(kwargs)
test(x=1,y=2) # x=1,y=2,kwargs={}
test(x=1,y=2,a=3,b=4) # x=1,y=2,kwargs={'a':3,'b':4}
/
:指定/
前面的参数,只能按照位置传参*
:指定*
后面的参数,只能按关键字传参sorted(iterable, /, *, key=None, reverse=False)
# 以上表明,参数iterable的值,只能通过位置传
# key,reverse的值,只能通过关键字传
匿名函数
结构:
lambda 入参:返回值
a = lambda x,y:x+y
a(1,2) #返回3
a = lambda x:0 if x % 2 else 1
a(4) # 返回1
高级函数
map
- 格式:
map(func,iterable)
将可迭代对象的每一个元素,交给
func
进行处理,然后返回新的值a = [1,2,3,4]
b = list(map(str,a)) # ['1','2','3','4']
a = [('a',1),('b',2),('c',3)]
b = list(map(lambda x:(x[0],str(x[1])),a))
# [('a','1'),('b','2'),('c','3')]
''.join(map(str,[1,'2',3])) # '123'
sorted
- 格式:
sorted(iterable, /, *, key=func, reverse=False)
将可迭代对象的每一个元素,交给key指定的函数进行处理,然后按照处理结果进行排序
a = [('a',10),('b',5),('c',3)]
sorted(a,key=lambda x:x[1])
# [('c',3),('b',5),('a',10)]
filter
- 格式:
filter(func,iterable)
将可迭代对象的每一个元素都交给函数进行处理,如果返回True,则保留该元素,否则删除
a = [0,1,2,3,4,5,6]
b = list(filter(lambda x:not (x % 2)),a)
# [0,2,4,6]
reduce
- 格式:
reduce(func,iterable)
看例子
a = [1,2,3,4,5]
reudce(lambda x,y : x+y,a)
# (((1+2)+3)+4)+5 累加
内置函数
函数名 | 简介 | 示例 |
---|---|---|
abs | 绝对值 | abs(1) #1 |
all | 如果全为True,则返回True | all([1,2,3,0]) # False |
any | 有一个为True,则返回True | any([1,2,3,0]) # True |
chr | 根据ASCII码值返回对应的字符 | chr(67) # ‘C’ |
ord | 根据字符,返回对应的ASCII码值 | ord(‘C’) # 67 |
dir | 返回一个对象所有的方法和属性 | dir(alist) # |
divmod | 模运算,以元组的形式,返回两个数值相除后的商和余 | divmod(4,3) #(1,1) |
enumerate | 以元组的形式返回序列的索引及其对应值 | list(enumerate([a])) # [(0,a)] |
eval | 会将字符串转化为python语句进行执行 | eval(‘1+2’) # 3 |
id | 返回对象在内存中的地址 | |
isinstance | 判断某个对象是否是某一类型 | isinstance(1,int) # True |
len | 返回对象的长度 | len(‘abc’) # 3 |
max | 返回序列的最大值 | |
min | 返回序列的最小值 | |
sum | 返回序列的和 | |
reversed | 反转序列 | |
round | 四舍五入 | round(4.54323,2) #4.54 |
zip | 打包 | list(zip([‘a’],[0])) # [(‘a’,0)] |
还没有评论,来说两句吧...