函数
函数基础
函数:具有独立功能的代码块
作用:代码的复用最大化以及最小化冗余代码,整体代码结构清晰,问题局部化。
用法:分为函数功能定义+函数的调用
函数功能定义:
def 函数名(参数列表:0-n个):
函数体[一系列的python语句,表示独立的功能]
函数调用:调用此函数,发挥功能模块
例子:
#函数定义
def printinfo():
'''
这个函数是用来打印信息的
:return:
'''
print('hello world!')
pass
#函数的调用
printinfo()
结果为:
hello world!
函数参数
函数是房间,参数就是大门,要想实现房间内功能,要通过门进入。
参数的分类:
空函数、必选参数、默认参数[缺省参数]、可选参数、关键字参数
参数:其实就是函数为了实现某项特定的功能,进而为了得到实现功能所需要的数据
- 空函数
def sum():
print('hello world')
print(sum())
- 必选参数
#必选参数
def sum(a,b): #形式参数:只是意义上的一种参数,在定义的时候是不占内存地址的
sum=a+b
print(sum)
pass
sum(2,3) #实际参数,实实在在有地址的,
sum() #这是错误的,因为是必选参数,必须传输数据
- 默认参数[缺省参数]
#默认参数
def sum(a=2,b=3):#提前赋了默认值,若只赋值一个,必须为最后一个
sum=a+b
print(sum)
pass
sum(8,2)
sum() #若为赋值,就用默认值,故为默认参数
结果为:
10
5
- 可变参数
当参数个数不确定时使用比较好,很灵活,可赋多值,形式参数是元组类型
#可变参数
def getresult(*args):
'''
求累加和
:param args: 可变长的参数类型
:return:
'''
print(args)
result = 0
for i in args:
result +=i
pass
print(result)
pass
getresult(1,2,3)
结果为:
(1, 2, 3)
6
- 关键字可变参数
形式参数是字典类型,传递也必须是字典类型
#关键字可变参数
def keyFunc(**kwargs):
print(kwargs)
pass
# 调用
# keyFunc(1,2,3) 不可以传递的
dictA={
"name":'Leo',"age":35}
keyFunc(**dictA)
keyFunc(name='peter',age=26,)
keyFunc()#什么都不传
结果为:
{
'name': 'Leo', 'age': 35}
{
'name': 'peter', 'age': 26}
{