鱼C论坛

 找回密码
 立即注册
查看: 2440|回复: 0

[学习笔记] 第17节-21节学习笔记——函数

[复制链接]
发表于 2019-12-29 19:52:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 wxyj3496 于 2019-12-29 19:52 编辑

1  示例
>>> def hello():
        print('Hello World!')
        return
        print('Welcome To FishC.com!')
运行结果
>>> hello()
Hello World!

因为当 Python 执行到 return 语句的时候,Python 认为函数到此结束,需要返回了(尽管没有任何返回值)。
2 函数文档
在函数中 直接用单引号括起来的就是函数文档,可以函数名.__doc__,或者help(函数名),可以输出函数文档,如下

捕获.JPG
3 搜集参数,在形参上加个*,就成为收集函数,参数数目不定,如
捕获1.JPG
4 函数和过程
函数是有返回值的,过程没有返回值。Python里只有函数没有过程。没有return的函数,返回的是None
5 在函数里改变全局变量,需要在变量名前加global,如下
捕获.JPG
6 内嵌函数,Python允许在函数内部定义函数
7 闭包,下面几句代码就是闭包,特点就是在外层函数返回内嵌函数,这样就可以通过外层函数给内嵌函数,并执行内嵌函数。相当于执行内嵌函数后,将结果返回到外层函数
>>> def fun1():
...  def fun2(x,y):
...     m = x * y
...      return m
...  return fun2
>>> fun1()(3,4)
12
8 内嵌函数更改外部变量的方法有两个,如下
第一个是,使用容器做变量,列表
第二个和全局变量类似,使用外部变量时,在前面加关键字nonlocal

捕获.JPG
9 闭包时,return 函数名带不带括号,调用方式不同
捕获.JPG
10 定义一个函数为fun1()
a=fun1和a=fun1()是不同的
a=fun1 fun1是函数的实体,相当于给fun1起个别名,没有执行fun1,要执行需要a()
a=fun1() 是函数fun1执行后将结果返回给a,a等于fun1的执行结果,如图
捕获.JPG
11 很经典的闭包的例子
捕获.JPG
12 lambda filter() map()例子
捕获.JPG


捕获.JPG



捕获.JPG

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
zltzlt + 5 + 5 + 3

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 13:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表