函数 3个月前

编程语言
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
image
EchoEcho官方
无论前方如何,请不要后悔与我相遇。
1377
发布数
439
关注者
2223226
累计阅读

热门教程文档

Spring Cloud
8小节
Kotlin
68小节
Gin
17小节
Docker
62小节
Golang
23小节