目录
4.1 函数
4.1.1 内置函数
内置函数是安装完Python后无须调用任何库就可直接使用的函数,这些函数提供了编程所需的最基础的功能。Python中的内置函数多并且全面,按属性和功能差异可以分为几个类别,大致有:与数据对象相关的函数、数学计算函数、str相关函数、序列对象相关函数、I/O功能函数、查询与判断函数等。
1.与数据对象相关的函数
这类函数往往用于创建数据对象、转换数据对象的变量类型或者获取数据对象的属性
创建或转换数据对象:
(此处代码较多,不贴出,请见代码附录)
2.数学计算函数![](https://i-blog.csdnimg.cn/blog_migrate/5c775f4ddf84f2ac6ff1df8ab480a568.png)
(此处代码较多,不贴出,请见代码附录)
3.与str相关的函数![](https://i-blog.csdnimg.cn/blog_migrate/6236f433c87e74639718e95cdc52b8eb.png)
(此处代码较多,不贴出,请见代码附录)
4.与序列对象相关的函数![](https://i-blog.csdnimg.cn/blog_migrate/9f06527cff8e06d0938ab5ae19a3d77a.png)
使用序列对象相关函数操作序列对象:
(此处代码较多,不贴出,请见代码附录)
5.I/O功能函数
6.用于查询与判断的函数
(此处代码较多,不贴出,请见代码附录)
7.其他内置函数![](https://i-blog.csdnimg.cn/blog_migrate/18422c038c3e95860004fcc52d7907e8.png)
(此处代码较多,不贴出,请见代码附录)
4.1.2 自定义函数
好了,到了最喜欢的环节
1.def语句
在Python中,一般使用def语句自定义函数。def语句的首行包括标识符def、函数名和圆括号,任何传入的参数都放在圆括号中;之后为函数的执行体,以冒号起始,换行缩进;如果函数有返回值,则以return表达式结束函数,不带return表达式的情况相当于返回None值。执行体的内容不能为空,至少要用pass来表示空语句,否则函数将无法执行。
def语句的基本语法格式如下:
def function(par1, pa2, …):
suite
return expression
使用def语句创建一个自定义函数,语句执行的逻辑及过程为:def可以视作创建函数的一个声明,该声明将创建名为function的函数;函数可以传入par1、par2等参数,并代入执行语句suite中;expression是一段可执行代码,程序最终返回其执行结果。在函数功能十分简单时,def语句中往往不包含suite,要对传入参数进行的操作可以放在expression中。
使用def语句创建幂运算函数:
(此处代码较多,不贴出,请见代码附录)
创建不同设定的输入与输出的自定义函数:
(此处代码较多,不贴出,请见代码附录)
2.参数
输入与输出是函数的两个重要方面。输入,即参数的传入;输出,即返回值的输出。前面介绍def语句时,已对自定义函数的返回值做过阐述。而自定义函数的参数则是更加重要的一个方面,只有对参数有深刻的理解,才能理解自定义函数。
参数的名称和位置一旦确定,函数的接口定义就完成了。除正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数,这使得函数定义的接口不但可以处理复杂的参数,还能简化调用者的代码。在Python中,函数的参数主要有3大类,分别是:位置和关键字参数;任意数量的位置参数;任意数量的关键字参数。第1类参数又称为定长参数、不可变参数,第2、第3类参数又称为不定长参数、可变参数。
(1)位置和关键字参数
位置参数和关键字参数是Python默认的参数类型。位置参数的形式往往是简单的数字,数字的排序是有意义的,代表了参数的位置;关键字参数则类似于dict中的元素,关键字与值成对出现,值有对应的关键字,没有位置的概念。
在自定义函数中使用位置参数和关键字参数:
(此处代码较多,不贴出,请见代码附录)
默认参数:
(此处代码较多,不贴出,请见代码附录)
(2)不定数量的位置参数
任意数量的位置参数:
(此处代码较多,不贴出,请见代码附录)
(3)不定数量的关键字参数
定义含有不定数量的关键字参数的自定义函数:
(此处代码较多,不贴出,请见代码附录)
3.作用域
每当在Python程序中使用名字时,就会在所谓的名字空间中生成和改变名字。创建一个函数前,所有代码都在模块的顶层,模块中的名字要么在模块本身中,要么在