**函数的初步定义
函数:一系列python语句的组合,可以坐在程序中运行一次或者多次,一般是完成具体的独立功能。
为什么要使用函数:代码的复用最大化以及最小化沉余代码,整体代码结果清晰。
函数定义:def +关键字+()+:
代码块
def 函数名():
代码块
def printIfgo():
#函数代码块
print("小王的身高是%f"%1.73)
print('小王的体重是%f'%56)
pass
#函数的调用
printIfgo()
*函数参数
#进一步的去完善这样的需求【输出不同人是信息】方案:通过传入参数来解决
def printInfo(name,heigh,weight,hobby,pro):
print("%s的身高是%f"%(name,heigh))
print("%s的体重是%f"%(name,weight))
print("%s的爱好是%s"%(name,hobby))
print("%s的身高是%s"%(name,pro))
pass
#调用函数参数
printInfo('小王', 1.34, 110, '干饭', '计算机')
参数:其实就是函数为了实现某项特定的功能,进而为了得到实现功能所需要的的数据,为了得到外部数据。
#1必选参数
def sum(a,b): #形式参数,只是意义上的一种参数,在定义的时候是不占用内存地址的
sum =a+b
print(sum)
sum(10,2) #实际参数,是实际占用内存地址的。
函数调用 在调用的时候必选参数,必选要加入参数的。
#2默认参数【缺省参数】始终存在于参数列表的尾部
def sum1(a=20,b=30):
print("默认参数使用=%d"%(a+b))
pass
sum1()
sum1(3,4)
如果没有是参时,就会调用之前定义函数时给定的默认值
#3可选参数(不定长参数),当参数的个数不确定时使用,比较灵活。
def getComputer(*args):
‘’’
计算累加和
Parameters
----------
*args : TYPE
DESCRIPTION.
Returns
-------
None.
'''
print(args)
result=0
for item in args:
result+=item
print('result=%d'%result)
pass
getComputer(1,2,3,4)
getComputer(1)
#4 关键字可变的参数
# **来定义
#在函数体内,参数关键字是一个字典类型 key 是一个字符串
def keyFunc(**kwagrs):
print(kwagrs)
pass
dictA={"name":'wang','age':23}
keyFunc(**dictA) #直接传递字典对象时,前面要加上两个**
keyFunc(name='pente',age='23') #不用声明,直接传递。
keyFunc()
#5组合的使用
def complexFunc(*args,**kwargs):
print(args)
print(kwargs)
pass
complexFunc(1,23, kwargs='niudehua')
#可选参数必选放在关键字可选参数之前。
可选参数:接收的数据是一个元组类型
关键字参数:接收的数据是一个字典类型