Python函数定义的方式有几种?

在Python中定义函数的主要方式有:

  1. 使用 def 语句
    这是最标准的定义函数的方式。
## python www.itzhimei.com 代码
def my_func(arg1, arg2):
    return arg1 + arg2
  1. 使用 lambda 表达式
    lambda可以创建小型匿名函数。
## python www.itzhimei.com 代码
adder = lambda x, y: x + y
  1. 将函数赋值给一个变量
    函数本身也是一个对象,可以赋值给变量。
## python www.itzhimei.com 代码
def my_func(x):
    return x * 2

my_var = my_func
print(my_var(2))
  1. 使用内置函数装饰器 @staticmethod、@classmethod
    可以将普通函数定义为类的静态方法或类方法。
## python www.itzhimei.com 代码
class MyClass:
    @staticmethod
    def my_func(x):
       print(x)
  1. 从类型对象中直接调用 call 方法
    任意带有 call 方法的对象都可当成函数调用。
## python www.itzhimei.com 代码
class Adder:
  def __call__(self, x, y):
    return x + y

adder = Adder()  
print(adder(2, 3))

Python提供了非常灵活的函数定义方式,可以满足不同的使用需求。