编程语言
569
在python中, 貌似没有成员函数, 而被称之为方法
函数内部创建的变量为局部变量
函数内部若想修改
全局变量, 需要在函数内先将要访问的变量前 + global
def oo(x, y): print(x, y) print(oo(1, 4)) # None, 没有返回值的函数 a = 100 def fun(): global a a+=100 fun()
#函数有多个返回值 def func(): return 1,2 x, y = func() # 1 2 print(type(func())) # # <class 'tuple'> def func1(): return 1,"hello",True a, b, c = func1() # 1 hello True print(func1()) # (1, 'hello', True) print(type(func1())) # <class 'tuple'> #缺省参数 def func3(x,y,z = 9): return x + y + z print(func3(x = 1, y = 2, z = 3)) print(func3(x = 1, y = 2)) # 传入参数的个数不受限制, 以元组的形式接受实参 def funcc(*args): print(f"args的类型是{type(args)},值是{args}") funcc(1,2,3,'小明') # args的类型是<class 'tuple'>,值是(1, 2, 3, '小明') # 传入参数的个数不受限制, 以字典的形式接受实参 def funccc(**kwargs): print(f"kwargs的类型是{type(kwargs)},值是{kwargs}") funccc(key1=1,key2=2) # kwargs的类型是<class 'dict'>,值是{'key1': 1, 'key2': 2} #函数作为参数传入函数 a=19;b=20 def compute(x,y): return x+y def text(func): result=func(a,b)+1 return result compute(a,b) # 39 text(compute) # 40 #lambda定义匿名函数 a=19;b=20 def text(computee): result=computee(a,b) return result text(lambda x,y:x+y) # 39