def add(x:int,y:int)->int:
"""
两个数字相加
:param x: 加数1
:param y: 加数2
:return: 返回两个数字的和
"""
return x+y
def sub(x:int,y:int)->int:
"""
两个数字相减
:param x: 减数1
:param y: 减数2
:return: 返回两个数字的差
"""
return x-y
def addAndSub(x:int,y:int)->(int,int):
"""
返回两个数的和与差
:param x: 加数1或者被减数
:param y: 加数2或者减数
:return: 返回两个数字的和与差
"""
return x+y,x-y
#元组传递参数
def damArgs(*args):
"""
多个数字相加
:param args: 相加的参数
:return: 返回相加的结果
"""
sum=0
for x in args:
sum+=x
return sum
#双星号传值 使用 dict的key value模式
def dictParamFunc(**dictParam):
for key,value in dictParam.items():
print(f"key:{key},value:{value}")
#设置默认值参数必须放到最后
def defaultValue(name:str,age:int=18,genenal:str="女"):
print(f"{name},{age},{genenal}")
def funcParam(funcName,x:int,y:int):
"""
函数的参数
:param funcName:
:param x:
:param y:
:return:
"""
result=funcName(x,y)
return result
def addAndSub(x:int,y:int):
"""
两个数字相加和相减结果
:param x:
:param y:
:return:
"""
return x+y,x-y
def damArgs(x:int,y:int,*args):
return x+y,x-y
def dictParamFunc(**dictParam):
for key,value in dictParam.items():
print(f"key:{key},value:{value}")
defaultValue("小芳")
defaultValue("小芳",20)
defaultValue("小芳",20,"男")
defaultValue(name="abc",genenal="男")
print(f"funcParam add { funcParam(add,1,2)}")
print(f"funcParam sub { funcParam(sub, 1, 2)}")
lmd=funcParam(lambda x,y:x+y,5,2)
print(f"lmd:{lmd}")
print(add(1,2))
print(addAndSub(6,2))
dictParamFunc(name="小芳",age=20,genenal="女")
print(damArgs(1,2,3,4,5,6,7,8,9,10))
num=300
def useNum():
print(num)
def cantChange():
num=400 #局部变量
print(num)#
def changeValue():
global num#改变必须加上global
num=400
print(num)
cantChange()
useNum()
changeValue()
print(num)