请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
函数好处代码重复使用保存一致性,易维护函数定义规则函数代码块以def 关键字开头后面接函数标识名称和小括号(),名称不能用纯数字或python保留字符进行定义不要以文件名命名不能出现特殊符合要简短且见名知意def dcs():函数体def 通过def 来定义函数,顶格写def dcs(): 定义了一个函数名称叫dcs 函数名称可以进行自定义函数体 一个tab键也就是4个空格,函数体中就是代码块def xiaowu(a,b):#定义函数1    print(a*b) #函数体def xiaowu2(a,b):#定义函数2    print(a+b) #函数体xiaowu(2,5) #结果输出10xiaowu2(2,5) #结果输出7def dcs3():pass #占位符,函数体中一定要有值,没有则抛异常dcs3()#函数调用不受规则限制,在任务位置都可以调用第一种def dcs4():print("dcs16")dcs4()第二种 主函数直接输入main 可以关联出来def dcs4():print("dcs16")def dcs5():print("dcs17")if name == 'main':dcs4()第三种 模块调用def dcs1(a,b):#定义函数print(a*b)#函数体def dcs2(a,b):#定义函数print(a+b)#函数体from xiaoliu import day6day6.dcs1(2,5)day6.dcs2(3,9)参数列表可以为空,即没有参数,也可以包含单个参数、多个参数、默认参数、可变长参数、参数之间使用逗号分隔。形参:写在函数声明的位置的变量实参:在函数调用的时候给函数传递的值传参:给函数传递信息的时候将实参交给形参的过程称为传参def wubo():    print('dcs16')def wubo2():    print('dcs17')if __name__ == '__main__':    wubo()函数中带有一个形参def dcs(name):#定义函数一个形参    print(name)#打印形参dcs('xiaowu')#函数调用并且传入实参#多个形参def dcs1(name,age):#定义函数包含两个形参    print(name,age)dcs1('xiaowu',22)#函数调用并且传入实参带有默认参数def dcs(name='xiaowu'):    print(name)dcs() #调用函数未传实惨dcs('xiaoyu') #调用函数传入实参#带有默认值的形参可以不赋予实参;也可以赋予,赋予后会替换传入的实参带有默认值参数后面不能放形参def dcs(age,name='xiaowu'):    print(name,age)dcs(16)#输出结果xiaoyu 16可变长参数中的可变长元组 "*"表示的是可变长元组def dcs(*name):#把name这个形参变为可变长元组类型    print(type(name))    print(name)dcs()#可变类型可以赋予实参,也可以不赋予实参dcs(1,2,3) #可变类型可以有多个实参可变长类型后面不能接形参def dcs(age,*name):    print(age,name)dcs(2,3,4,'xiaowu') #输出结果2 (3, 4, 'xiaowu')#可变长类型后面一定接的是默认值参数def dcs(*name,age=23):    print(name,age)dcs('xiaowu',2,3,4,2) #输出结果('xiaowu', 2, 3, 4, 2) 23可变长参数中的可变长字典 "**"表示的是可变长字典def dcs(**name):#定义一个函数,函数中有可变长字典    # print(type(name))    print(name)dcs() #可变类型在调用函数时可不赋予实参#可变长字典类型后不能带普通形参#可变长元组不能在放在可变长字典后面def dcs(*age,**name):#可变长元组和字典同时存在只能将元组放在字典前面    print(name,age)dcs(2,3,4,2,name='xiaowu')全局变量和局部变量a=200 #全局变量def dcs(): #定义函数    a=100 #局部变量    print(a) #打印局部变量100dcs()print(a) #打印全局变量200函数体中有变量则优先应用函数中的变量如果函数体中没有变量则引用函数体外的全局变量全局变量可以被任何函数方法引用局部变量只能被当前函数本身来引用(如需要用可以用函数传递)把局部变量变为全局变量a = 200#全局变量def dcs1():#定义函数  global a #把函数中的局部变量声明为一个全局变量  a = 100#局部变量  print(a)dcs1()  print(a)def dcs2():#定义函数  print(a)dcs2()函数传递return 语句def dcs1():#定义函数 a =100 #局部变量 return a #返回值 把一个具体的结果赋予给函数就需要用到此方方法def dcs2():#定义函数  #a =dcs1()#第一种函数传递方式  c = 50 #局部变量  #c +=a  c +=dcs1()#第二种函数传递方式print(c)dcs2()def dcs1():#定义函数  a = 100 #局部变量  c =a/2#除法  return c #返回  def dcs2():#定义函数  d=dcs1()#函数传递  d *=2 #乘法  return dprint(dcs2())#100.0

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册