函数定义
函数是一种可以完成特定功能的一个语句组,可通过调用函数名来完成语句组的功能。
- 生活行为对比
生活中的行为是一个/一系列动作的集合。而行为只有在执行的时候才会运用函数。
代码可以象征生活中的一个/一系列动作,而函数将这些动作(函数)包含/封装起来,在需要的时候再执行。
- 规则:
生活中的行为有了行为才能执行
代码中的函数有了需要(要执行函数包含的代码片段)才会执行。
函数开发遵循,先声明(定义),再调用。
-
python函数分为:
1.自定义函数:用户自己编写的
2.系统函数:Python内嵌的函数,标准库的函数,图形库中的方法 -
函数自定义格式:
运用关键字defind —>def专门定义函数
基本语法规则:
def 函数名称(函数执行需要的数据):
函数的执行过程
return 函数执行的结果
注:函数名称可以是任何有效的Python标识符
比如: def xue_xi():
'''该函数是查看学习情况的'''
print("正在写作业")
return("作业字迹很好")
xue_xi()
- 自定义函数有四种(以生活中的四种不同行为为方向):
- 1.不需要提供资源,不需要返回结果
如:打开门窗换气的行为
def open_window():
'''函数代表打开门窗换气'''
print("打开窗户,门通风")
#调用执行函数
open_windown()
2.需要提供资源,不需要返回结果
如:购买食品
def chi(food,money):]
'''函数指购买零食产品'''
print("出门带的钱:",money)
print("购买的食品数量:",food)
#调用执行函数,不需要返回结果
chi("薯片",100)
3.不需要提供资源,需要返回结果
如:让朋友过来喝酒
def he_jiu():
'''函数指请朋友过来喝酒'''
print("喝酒来不?")
return " 在哪整?这就去"
#调用执行函数,需要返回结果
x = he_jiu()
print("收到的答复:",x)
4.需要提供资源,需要返回结果
如:帮同事买饭
def shop(food,money):
'''函数是指给同事买饭'''
print("帮我买份午餐吧")
if 20 < money <30:
print("可以买鱼香肉丝")
x = "鱼香肉丝"
elif 10 < money <20:
print("可以买回锅肉")
x = "回锅肉"
else:
print("只能买个肉夹馍")
x = "肉夹馍"
#调用函数
food = shop("麻婆豆腐",15)
- 函数参数值
1.位置参数
def party(name,number):
'''函数是指举行聚会来人的名字和数量'''
print("姓名",name)
print("人数",number)
#调用函数
party("小明",1)
party(["小明","jake","Miss"],3)
2.默认值参数
def party(wine ,number = 2):
'''函数是指举行聚会的酒数量'''
print("酒:",wine)
print("人数",number)
#调用函数
party("香槟")
party(["二锅头","江小白","衡水老白干"],50)
3.可变参数值
def party(food,*thing):
'''函数是指聚会的食物酒与人员情况'''
print("食物",food)
print("聚餐事物",thing)
#调用函数
party('菲力牛排',"衡水老白干","小明","jake")
4.关键字参数
def party(name,**thing):
'''函数是指聚会人员与相关事项'''
print("姓名:",name)
print("聚会物品:",thing)
#调用函数
party("小明",wine = ["江小白","飞天"],food = ["自助烤肉","原酿啤酒"]) #键值对的value数据添加可以用列表表示
5.(号称)万能参数
def party(*args,**kwargs):
print(args) #args---->>arguments 参数
print(kwargs) #kwargs---->>key word arguments 关键字参数
party()
#例如:
def party(*name,**thing):
'''函数是指聚会人员必备事物'''
print("参与人员:",name)
print("必备事物:",thing)
#调用函数
party("小明","jake",wine = ["伏特加","威士忌"],food = ["水果","烤肉","披萨"])
party(["宇哥","炎哥"],wine = "茅台",food = "菲力牛排")
6.强制关键字参数(即不可变参数)
def party(name, *, wine, food):
print("姓名:",name)
print("酒的种类",wine)
print("食物的种类:",food)
##调用函数
party("小明",wine = "老村长",food = "烤肉")
party("小明",food = "烤肉",wine = "老村长") #wine 与 food数据调换位置也不会改变输出结果