Python第一章 函数2020-02-18

https://developer.aliyun.com/lesson_1782_14895#_14895

第一章 函数

1、递归

2、高阶函数:接收函数作为参数,或者将函数作为返回值的函数。

python中,函数是一等对象。

调用者/使用者需要提前知道函数的功能

当使用函数作为参数时,实际上是将指定的代码传递进了目标函数

这里的学习内容才是适合自己目前所处阶段的、能够自感舒服的、有收获感的、完全吸收的内容。

3、匿名函数:

lambda函数表达式

lambda 参数列表: 返回值

# 匿名函数一般作为参数使用,其他地方不使用

filter()

r = filter(lambda i: i> 5, l)

map()

r= map(lambda i: i + 1, l)

4、sort()排序

sort()默认比较字符串元素的大小

a.sort(key=len)以字符串长度作为参数

a.sort(key=int)将元素都转换为整型后进行排序

# sorted可以对任意序列进行排序

#    并且不会影响到原来的对象,而是返回一个新对象

sorted(a, key=int)

5、闭包:函数作为返回值

# 闭包

# 形成必报的要件:

# 1、函数嵌套

# 2、将内部函数作为返回值返回

# 3、内部函数必须使用的外部函数的变量

def make_averager():# 1、函数嵌套

nums = []# 局部变量

# 船舰一个函数,用来计算平均值

def averager(n):

# 将n添加到列表中

nums.append(n)

#求平均值

return sum(nums)/len(nums)

return averager # 2、将内部函数作为返回值返回

print(averager(10))# 3、内部函数必须使用的外部函数的变量

print(averager(20))

print(nums)#会报错,外面看不到

6、装饰器引入和使用

# 希望在不修改原函数情况下,对函数进行扩展

#   只需要根据现有的函数,来创建一个新的函数

# 开闭原则(OCP)

#    程序的设计,要开发对程序的扩展,要关闭对程序的修改

#    对扩展开放,对修改关闭

*args  **kwargs

@begin_end装饰器

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容