2.5 函数基础

函数是合理组织的一组代码。

比如,print是Python内置的一个函数,用于在屏幕上打印出指定的字符。我们无须知道print函数的内部是怎么实现的,只要知道这个函数是做什么的,以及需要什么样的参数,就可以让这个函数为我们所用。


>>> print('Hello World')
Hello World
>>> print('Hello', 'World')
Hello World

函数有名字,有参数列表,有函数体。在Python编程中,函数用关键字def来定义。要特别留意的是,与Java或C++等强类型语言不同,Python的函数定义无须指定返回值类型。


def greet(name):
    print('Hello', name.capitalize())
    print('How are you doing?')
    print(datetime.now())
    print()

在以上例子中,通过def关键字,我们定义了一个函数,这个函数的名字叫greet,函数名后的括号内指定的是它的参数列表(可以为空),函数接受一个参数,参数名为name。通过代码行的缩进层次,我们可以清晰地看出函数体有四行代码。

定义了这个函数之后,我们就可以通过它的函数名加上括号运算符来调用它。


greet('ava')
greet('Ema')

执行结果如下:


Hello Ava
How are you doing?
2019-11-29 08:38:49.166432

Hello Ema
How are you doing?
2019-11-29 08:38:49.166475

函数可以有返回值,是在函数体中用关键字return来指定的。


def sum(num1, num2):
    return num1 + num2

total = sum(3, 5)
print(total)

执行结果如下:


8