Python中函数的定义及其调用
一、函数的定义及其应用
所谓函数,就是把具有独立功能的代码块组织成为一个小模块,在需要的时候调用
函数的使用包含两个步骤
1.定义函数–封装独立的功能
2.调用函数–享受封装的成果
函数的作用:在开发时,使用函数可以提高编写的效率以及代码的重用‘’
函数:
函数是带名字的代码块,用于完成具体的工作
需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用该
任
务的函数,让python运行其中的代码,你将发现,通过使用函数,程序编写,阅读,测试
和
修复都将更容易
1.定义函数
def 函数名():
函数封装的代码
1.def是英文define的缩写
2.函数名称应该能够表达函数封装代码的功能,方便后续的调用
3.函数名称的命名应该符合标识符的命名规则
可由字母,下划线和数字组成
不能以数字开头
不能与关键字重名
#类及函数的定义
Class A:
#构造函数:
def __init__(self,var1,var2):
self.var1 = var1
self.var2 = var2
def b(self,var1,var2):
return var1+var2
#类内函数调用:
var1=1
var2=2
#创建对象:
a = A(var1,var2);
#调用函数:
a.b(var1,var2)
Python函数调用时的实参与函数定义时的形参前加单星号(*)和双星号()**
不定长参数args和**kwargs(形参前面的和**)
args和kwargs都是函数定义时的形参,用来接收未知个数的实参(可以为0个)。
args将多余的变量以元组的形式接收。
**kwargs将多余的命名参数(即带有变量名的实参)以字典的形式接收,其中字典的键为命名参数的变量名,值为命名参数的值。
拆包(实参前面的和)
上面的和都是加在形参的前面,表示不定长参数,分别用来接收不带变量名的多余参数和带有变量名的多余参数,分别将它们以元组和字典的形式接收进函数。
当在实参的前面加上*和时,就意味着拆包。单个表示将元组拆成一个个单独的实参,而两个则表示将字典拆成一个个单独的带变量名的实参。
实参前面加*或**,该实参一定不是普通的数据类型。*后面必须是元组实参,而**后面必须是字典实参。