函数的定义:可以被调用重复使用的代码,

语法:def 函数名(参数一,参数二):

                   函数名

          返回值(return) 

def是函数定义的关键字,

函数名符合标识符定义

不给rutuen会返回none

函数的调用:函数名(参数)

python中参数分为形式参数和实际参数

实参调用时需要需要加入必要的参数,实参传形参

必须参数:python函数定义的时候,参数的顺序和个数,在调用中必须遵守形参的形式

关键字参数:给实际参数一个名称(与形参名称一致),确保及时不按顺序传参,也能接收正确数据

默认参数:不传参会按默认值

def 函数(name,age=11):

函数名(“张三”)#显示结果会默认显示

不定长参数:函数定义时加上*可以使该函数被调用时接收不确定个数的参数(类似空元组,不进行传参也行)

def printinfo(arg,*vartuple):

         函数体

printinfo(“啦啦”,123,56,666)

返回值:是函数运行结束都需要得调用者返回内容。具体内容需要看函数功能,使用return,没有返回none

主函数:

if __name__=="__main__":

主函数没有参数,不会被其他函数调用,主函数没有任何返回值。主函数只能有一个

作用域

全局变量----不属于任何函数,写在函数之外

局部变量----定义在某一个函数内的变量

python可以使用global将局部变量声明为全局变量,

python中尽可能减少使用全局变量的应用。会降低函数的独立性和功能性

匿名函数:

func=lambda x:x*2

print(func(2))

文档字符串:

是函数体中用三引号包括起来的字符串

def qiqi():

‘’‘函数文档字符串,展示文档功能 ’‘’

print(qiqi.__doc__)

#### 构造函数

 `def __init__(self,参数一,参数二)`:

      函数体

1.所有对象和内容均无法调用,只有创建对象的时候,自动运行p1.person()就已经运行了·

2.作用域给对象的属性一个初始值,多数情况下,构造函数需要参数

3.俩下划线表示私有的特性