Python函数
基本上所有的高级语言都支持函数,Python也不例外。Python不但能非常灵活地定义函数,而且本身内置了很多有用的函数,可以直接调用。
函数就是最基本的一种代码抽象的方式。
为什么要使用函数:
代码的复用最大化以及最小化冗余代码,整体代码结构清晰,问题局部化
函数定义:
def 函数名():
函数体[一系列的python语句,表示独立的功能]
函数的调用:
本质上就是去执行函数定义里面的代码块,在调用函数之前 必须先定义

体验一下简单的函数运用
def printInfo():
'''
函数是用来打印小张个人信息的
:return:
'''
print('小张的身高是%f' % 1.73)
print('小张的体重是%f' % 160)
print('小张的爱好是%s' % '唱歌')
print('小张的信息是%s' % '计算机信息管理')
print('____________________________')
pass
printInfo()
def printInfo(Name,High,Wight,Hobby,Massage):
print('%s的身高是%f' % (Name,High))
print('%s的体重是%f' % (Name,Wight))
print('%s的爱好是%s' % (Name,Hobby))
print('%s的信息是%s' % (Name,Massage))
print('____________________________')
pass
printInfo('小明',1.81,150,"打游戏","计算机")
printInfo('Peter',1.75,140,"码代码","软件开发")
函数的参数
参数的分类:必选参数、默认参数、可选参数、关键字参数
参数:其实就是函数为了实现某项特定的功能,进而为了得到实现功能所需要的的数据,为了得到外部数据的
print('---------------1.必选参数----------------------')
def SumA(a,b): #a b称为形式参数:只是意义上的一种参数,不占内存地址的
Sum1=a+b
print(Sum1)
SumA(5,6) #5 6是实际参数:实参是实实在在的参数,占内存地址的
print('---------------2.默认参数----------------------')
def SumB(a=20,b=30):
Sum2 = a + b
print(Sum2)
pass
SumB() #在调用的时候如果未赋值,就会用定义函数时给定的值
SumB(50,30) #也可以赋值
print('---------------3.可变长参数----------------------')
def SumC(*args):
Result=0
for Item in args:
Result += Item
print(Result)
SumC(1,2)
SumC(1,2,3,4,5,6,7,8)
print('---------------4.关键字可变参数----------------------')
#在函数体内,这个参数关键字是一个字典类型,key是一个字符串
def keyFunc(**kwargs):
print(kwargs)
dictA={"Name":"Peter","High":1.85,"Wight":150,"Hobby":"打游戏","Massage":"计算机"}
keyFunc(**dictA) #必须加两个**
keyFunc()
print('---------------5.组合可变参数----------------------')
def CFunc(*args,**kwargs): #可选参数必须放到关键字可选参数之前
'''
可选参数必须放在关键字可选参数之前
可选参数:接收的数据是一个元组类型
关键字可选参数:接收的数据是一个字段类型
:param args:
:param kwargs:
:return:
'''
print(args)
print(kwargs)
CFunc(1,2,3,4,name='李易峰')
CFunc(age=36)
函数返回值
概念:函数执行完成以后会返回一个对象,如果在函数的内部有return 就可以返回实际的值,否则返回None
类型:可以返回任意值,返回值类型应该取决于return后面的类型
用途:给调用方返回数据
在一个函数体内可以出现多个return值,但是只能返回一个return
如果在一个函数体内,执行了return,意味着函数的执行就退出了,return后面的代码语句将不会执行
print('---------------1.返回值为值----------------------')
def SumA(a,b):
SumA=a+b
return SumA #将计算的结果返回
Sum1=SumA(20,30) #将返回值赋值给其他变量
print(Sum1) #函数的返回值返回到调用的地方
print('---------------2.返回值为值----------------------')
def SumB(num):
result=0
i=1
while i<=num:
result+=i
i+=1
pass
return result
Sum2=SumB(10)
print(Sum2)
print('---------------3.返回值为列表----------------------')
def ListC(num):
List=[]
result=0
i=1
while i<=num:
result+=i
i+=1
List.append(result)
pass
return List
Sum3=ListC (10)
print(type(Sum3))
print(Sum3)
print('---------------4.返回值为元组----------------------')
def Tuple():
"""
返回元组类型的数据
:return:
"""
return 1,2,3
TupleA=Tuple()
print(TupleA)
print('---------------5.返回值为字典----------------------')
def Dict():
"""
返回元组类型的数据
:return:
"""
return {"Name":"李易峰"}
Dict1=Dict()
print(Dict1)
函数的嵌套
def fun1():
print("----------------fun1 start------------------")
print("----------------执行代码省略------------------")
print("----------------fun1 end------------------")
pass
def fun2():
print("----------------fun2 start------------------")
fun1() #嵌套了fun1()函数
print("----------------fun2 end------------------")
pass
fun2()
函数的分类:有参数无返回值;有参数有返回值;无参数有返回值;无参数无返回值
作业:
1、写函数,接收n个数字,求这些参数数字的和
def SumA(*arts):
sum1=0
for item in arts:
sum1+=item
print(sum1)
pass
SumA(5,6,9,8,2)
2、写函数,找出传入的列表或元组的奇数位对应的元素,并返回一个新的列表
def ListA(list1):
list_new = []
index = 1
for item in list1:
if index % 2 == 1:
list_new.append(item)
index += 1
return list_new
rs = ListA([1, 2, 3, 4, 5])
print(rs)
3、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。PS:字典中的value只能是字符串或列表
print('-------------不定义字典元素做法---------------')
def dictFunc(**Abc) :
result = {}
for key, value in Abc.items():
if len(value) > 2:
result[key]=value[0:2] # 往字典里添加数据
pass
else:
result[key] = value
return result
dicA = {"Name":"夏大天","Hobby":"peter","Massage":"计算机"}
print(dictFunc(**dicA))
print('-------------定义字典元素做法---------------')
def dictFunc(Efg) :
result = {}
for key, value in Efg.items():
if len(value) > 2:
result[key]=value[0:2] # 往字典里添加数据
pass
else:
result[key] = value
return result
dicA = {"Name":"夏大天","Hobby":"peter","Massage":"计算机"}
print(dictFunc(dicA))
本文详细介绍了Python函数的使用,包括函数的定义、调用、参数类型(必选、默认、可变长、关键字参数)以及返回值。通过实例展示了如何创建并调用函数,以及如何处理不同类型的参数。此外,还探讨了函数的嵌套和分类,并给出了几个练习题,帮助读者巩固函数的使用技巧。
3366

被折叠的 条评论
为什么被折叠?



