函数用法和底层分析:
函数是可重用的程序代码块,函数的作用,不仅可以实现代码的复用,更能实现代码的一致性,一致性是指:只要修改函数的代码,则所有调用该函数的地方都能得到体现。
在编写函数时,函数中的代码,只是对代码实现了封装,并增加了函数的调用、传递参数、返回计算结果等内容。
函数的基本概念:
1.一个程序有一个个任务组成;函数就是一个任务或者一个功能。
2.函数是代码复用的通用机制。
Python函数的分类:
Python中函数分为如下几类:
1.内置函数
如:str()、list()、len()等这些函数都是内置函数,我们可以拿来直接使用。
2.标准库函数
可以通过import语句导入库,然后使用其中定义的函数
3.第三方库函数
Python社区也提供了很多高质量的库,下载安装这些库后,也是通过import语句导入。
4.用户自定义函数
用户自定义的函数,显然要是开发中适应用户自身需求定义的函数。
函数的定义和调用:
核心要点
Python中,定义函数的语法如下:
def 函数名([参数列表]):
'''文档字符串'''
函数体/若干语句
要点
1.使用def来定义函数,然后就是一个空格和函数名称;
(1)Python执行def时,会创建一个函数对象,并绑定到函数名变量上。
2.参数列表
- 圆括号内是形式参数列表,有多个参数则使用逗号隔开。
- 形式参数不需要声明类型,也不需要指定函数返回值类型。
- 无参数,也必须保留空的圆括号
- 实参列表必须与形参数列表一一对应
3.return返回值
- 如果函数体中包含return语句,则结束函数执行并返回值
- 如果函数体中不包含return语句,则返回None值
4.调用函数之前,必须要先定义函数,即先调用def创建函数对象
- 内置函数对象会自动创建
- 标准库和第三方库的函数,通过import导入模块时,会执行模块中def语句
形参和实参*
形参和实参的要点,上面有已有总结
【操作】定义一个函数,实现两个数的比较,返回较大的值
def print_max(a,b):
'''实现两个数的比较,返回最大值'''
if a>b:
return (a,"较大值")
else:
return (b,"较大值")
print(print_max(10,20))
print(print_max(30,20))
执行结果:
(20, '较大值')
(30, '较大值')
上面的print_max函数中,在定义时写的print_max(a,b),a和b称为“形式参数”简称形参。也就是说形参是在定义函数时使用,形式参数的命名只要符合“标识符”命名规则即可。
在调用函数时,传递的参数称为“实际参数”,简称“实参”,上面代码中print_max(10,20),10和20就是实际参数。
文档字符串(函数的注释)
程序的可读性最重要,一般建议在函数体中开始的部分附上函数定义说明,这就是“文档字符串”,也可以认为是“函数的注释”。通常使用三个单引号或者三个双引号来实现,中间可以加入多行文字进行说明。
def print_max(n):
''' 根据传入的n,打印多个星号'''
print("**"*n)
#可以调用help(函数名.__doc__)可以打印输出函数的文档字符串,执行如下:
print(help(print_max.__doc__))
执行返回:
help(print_max.__doc__)
No Python documentation found for '根据传入的n,打印多个星号'.
Use help() to get the interactive help utility.
Use help(str) for help on the str class.
返回值
return返回值的要点:
- 如果函数体中包含return语句,则结束函数执行返回值
- 如果函数体中不包含return语句,则返回None值
- 要返回多个返回值,使用列表、元组、字典、集合将多个值“存起来”即可。