Skip to content

函数

1. 函数定义

  • 定义函数使用关键字 def,后跟函数名与括号内的形参列表。函数语句从下一行开始,并且必须缩进。
  • 函数定义并不会执行函数体;只有当函数被调用时才会执行此操作。

下面就定义了一个名为 test 的函数,没有参数:

python
def test():
    print('hello world')

2. 函数参数

  • 函数定义支持可变数量的参数。

2.1 默认值参数

为参数指定默认值是非常有用的方式。调用函数时,可以使用比定义时更少的参数:

python
def test(a, b=10):
    print(a, b)

test(10)        # 输出 10 10
test(10, 20)    # 输出 10 20

2.2 关键字参数

  • 关键字参数的顺序并不重要。
  • 关键字参数必须跟在位置参数(非 key=value 形式的参数即为位置参数)后面。
  • 不能对同一个参数多次赋值。

关键字参数为 key=value 的形式来调用函数:

python
def test(a, b):
    print(a, b)

test(a=10, b=20)    # 输出 10 20
test(b=20, a=10)    # 输出 10 20

3. 函数返回值

  • return 语句返回函数的值。return 语句不带表达式参数时,返回 None
  • 没有 return 语句时,函数默认返回 None
python
def test():
    print('hello world')

def test2():
    print('hello world')
    return 'test2'

print(test())   # 返回 None
print(test2())  # 返回 'test2'

4. 函数调用

  • 函数名加括号即可发起函数调用。
  • 参数按照函数定义时的顺序、位置进行一一对应的传值就行。