学习笔记:Python3菜鸟教程 Part5
13 Python3函数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
一、函数定义
一般格式如下:
def 函数名(参数列表):
函数体
函数定义简单的规则:
二、 函数调用
定义一个函数:给了函数一个名称,指定了函数里包含的参数,和代码块结构。
这个函数的基本结构完成以后,你可以通过另一个函数调用执行,也可以直接从 Python 命令提示符执行。
三、参数传递
预备知识:
在 python 中,strings, tuples, 和 numbers 是不可更改(immutable)的对象,而 list,dict 等则是可以修改(mutable)的对象。
函数参数传递:
四、参数
1.必需参数
必需参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。
2.关键字参数
关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。
使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。
3.默认参数
调用函数时,如果没有传递参数,则会使用默认参数。
4.*不定长参数
五、匿名函数
python 使用 lambda 来创建匿名函数。
所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。
lambda 函数的语法只包含一个语句:
lambda [arg1 [,arg2,.....argn]]:expression
六、变量作用域
1.四种Python作用域
参考博客
2.global和nonlocal关键字
14 Python3模块
15 Python3迭代器与生成器
1.迭代器
迭代是Python最强大的功能之一,是访问集合元素的一种方式。
迭代器是一个可以记住遍历的位置的对象。
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter() 和 next()。
字符串,列表或元组对象都可用于创建迭代器。
2.生成器
16 Python3遍历技巧
1.在字典中遍历时,关键字和对应的值可以使用 items() 方法同时解读出来
2.在序列中遍历时,索引位置和对应值可以使用 enumerate() 函数同时得到
3.同时遍历两个或更多的序列,可以使用 zip() 组合
4.要反向遍历一个序列,首先指定这个序列,然后调用 reversed() 函数
5.要按顺序遍历一个序列,使用 sorted() 函数返回一个已排序的序列,并不修改原值