函数初识
-
函数的基本结构
def 关键字--定义函数
func 函数名和变量的命名规则一样
() 格式,用来船体参数,
:申明函数定义语句的结束
def func():
print('哈啊哈')#函数体
func()#调用函数
-
函数的返回值
return 返回值
return的内容返回给了函数的调用
return下方的代码不执行,终止这个函数
return 返回多个内容的时候还是元组形式
return 没有写返回值的时候返回的是None,不写return返回None
def yue():
print("打开手机")
print("打开微信")
return 111
print("找到女友")
print("晚上约吗")
return "萝莉小姐姐","大妈","人妖" # return 返回
print("确实有点累")
print(yue()) # 111
print(1234)
=========================================
lst = [1,2,3,4,5]
def func():
for i in lst:
print(i)
lst.append(input(">>>"))
return lst
-
函数的参数
1:位置参数
def yue(a,b,c): # 形参
print("打开手机")
print(f"打开{a},{c},{b}")
print("附近的人")
print("找个妹子")
print("聊一聊")
yue(True,(12,4,3),[1,2,3,4]) # 实参
2:默认参数
def userinfo(name,age,sex="男"): # 位置参数 > 默认参数
print(name,sex,age)
count = 5
while count:
name = input("name:")
sex = input("sex(男性直接回车!):")
age = input("age:")
if sex == "女":
userinfo(name,age,sex)
else:
userinfo(name, age)
count -= 1
3:关键字参数:
def func(a,c,b=1): # a,c位置参数 ,b=1 是默认参数
print(a,b,c)
func(a=1,b=5,c=2) # a=1,b=5,c=2 是关键字参数
4:混合参数
def func(a,b,c):
print(a,b,c)
func(1,2,c=5) # 混合参数
**************************************************************
# 形参: 函数的定义中括号里是形参
# 实参: 函数的调用括号里是实参
# 位置传参时 形参和实参必须一一对应
# 传参: 将实参传递给形参的过程就是传参
# 函数的参数:
# 形参: 函数定义的时候叫做形参
# 位置参数
# 默认参数
# 混合参数
# 实参: 函数调用的时候叫做实参
# 位置参数
# 关键字参数
# 混合参数
# 传参: 将实参传递给形参的过程叫做传参
函数的动态参数
#*args动态位置参数
def func(a,b,*args):#*args是万能的位置参数,*在函数定义的时候叫聚合
print(a,b,args)#接收的是元祖形式
def func(a,b,*args):
print(a,b*args)#*args在函数内部是打散的意思
位置参数>动态位置参数>默认参数
-------------------------------------------------
#**kwargs动态关键字参数
def func(a,b,**kwargs):#**kwargs接受的是关键字,字典的格式
print(a,b,kwargs)#字典的格式
def func(a,b,kwargs):
print(a,b,*kwargs)#*kwargs获取到的是字典的键
位置参数>动态位置参数>默认参数(关键字参数)>动态关键字参数
-------------------------------------------------
*args,**kwargs万能参数
def func(*args,**kwargs):
print(args,kwargs)
函数的注释
def func1(user,password):
"""
密码加密
:param user: 用户名 str
:param password: 密码 str
:return: 加密的密码 MD5
"""
print(user,password)
print(func.__doc__)#可以查看函数的注释