函数:
# 什么是函数:一系列python语句的组合,可以在程序中运行一次或者多次 # 一般是完成具体的独立的功能 # 为什么要使用函数 # 代码的复用最大化以及最小化冗余代码,整体代码结构清晰,问题局部化 # 函数定义: # def 函数名() # 函数体【一系列的python语句,表示独立的功能】 # 函数的调用: # 本质上就是去执行函数定义里面的代码块。在调用函数之前,必须先定义 printInfo() #函数的调用 函数名()#函数的调用
def printInfo(name,height,weight,hobby,pro): ##加括号,固定语法规则 print('%s的体重是%d' % (name, weight)) # 函数代码块 print('%s的身高是%f' %(name,height)) print('%s的爱好是%s' % (name,hobby)) print('%s的专业是%s' %(name,pro)) #封装完成 pass # 调用带参数的信息 printInfo('小李',172,200,'打游戏','信息管理') printInfo('小名',172,200,'打游戏','信息管理')
# 参数的分类: # 必选参数、默认参数【缺省参数】、可选参数、关键字参数 # 参数:其实就是函数为了实现某项特定功能,进而为了得到实现功能所需要的数据 # 为了得到外部数据的 # 1 必选参数 def sum(a,b): # a,b形式参数:只是意义上的一种参数,在定义的时候是不占内存地址的 sum=a+b print(sum) pass # 函数调用 sum(20,15) #20 15是实际参数,是实际占用内存地址的 sum() #未传递参数,不可使用,不允许这样调用
# 参数的分类: # 必选参数、默认参数【缺省参数】、可选参数、关键字参数 # 参数:其实就是函数为了实现某项特定功能,进而为了得到实现功能所需要的数据 # 为了得到外部数据的 # 1 必选参数 def sum(a,b): # a,b形式参数:只是意义上的一种参数,在定义的时候是不占内存地址的 sum=a+b print(sum) pass # 函数调用 sum(20,15) #20 15是实际参数,是实际占用内存地址的 sum() #未传递参数,不可使用,不允许这样调用 # 2:默认参数【缺省参数】 def sum1(a=20,b) print('') pass # 默认参数调用 sum1(10) # 在调用的时候如果未赋值,就会用定义函数时给的默认值 sum1(2,56)
# 可变参数(当参数的个数不确定时使用,比较灵活) def getComputer(*args): ''' :param args: #可变长参数类型 :return: ''' print(args) pass getComputer(1) ##当元组数据时直接加逗号 getComputer((1,2,3,4,5,6)) getComputer(1,2)
# 可变参数(当参数的个数不确定时使用,比较灵活) def getComputer(*args): #可变长的参数 ''' :param args: #可变长参数类型 :return: ''' # print(args) result=0 for item in args: result+=item print('result=%d'%result) pass getComputer(1) ##当元组数据时直接加逗号 getComputer(1,2)
# 关键字参数 # ** 来定义 # 在函数体内 参数关键字是一个字典类型 key是一个字符串 def keyFunc(**kwargs): print(kwargs) pass # 调用 # keyFunc(1,2,3) #字典类型,此类型错误 dictA={'name':'leo','age':35} # keyFunc(**dictA) #直接传递字典对象时,字典名前要加** # keyFunc(name='peter',age=19) #键值对方法传递 keyFunc() #不传参数也可,直接为空
# 组合的使用 def complexFunc(*args,**kwargs): #参数混合使用 print(args) print(kwargs) pass complexFunc(1,2,3,4,name='刘德华') #直接传送到第一个参数之中 # 参数可以都给,也可以都不给,也可以只给其一 complexFunc(name='贾玲') #自动识别,自动填充
def TestMup(**kwargs,*args): ##可选参数 ''' 可选参数必须放到关键字可选参数之前 可选参数:接受的数据是一个元组类型 关键字可选参数:接受的数据是一个字段类型 :param kwargs: :param args: :return: ''' pass
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!
原文链接:https://blog.csdn.net/weixin_44632711/article/details/120895627