在Python中,函数定义主要有以下几种类型:
def
关键字定义的函数,需要为函数指定一个名称。例如:def my_function():
print("This is a normal function.")
lambda
关键字定义的匿名函数,通常用于简单的操作,不需要指定函数名。例如:my_lambda = lambda x: x * 2
print(my_lambda(5)) # 输出:10
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n - 1)
def apply(func, x):
return func(x)
def square(x):
return x * x
result = apply(square, 5) # 输出:25
yield
关键字定义的函数,用于生成一个迭代器。例如:def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
fib = fibonacci(5)
for num in fib:
print(num) # 输出:0 1 1 2 3