函数
当编写的代码出现有规律的重复时,这个时候就要考虑定义函数,将这些代码提取定义成一个函数,方便调用。
Python 提供许多内置函数,可以根据需要调用相应的函数实现想要的功能。同样 Python 也能够灵活地自定义函数。
调用函数
介绍如何定义函数前,先讲下如何调用函数。
Python 提供许多内置函数,这些函数都是可以直接调用的。包括前面的篇幅,其实也有调用函数实现一些功能。这里大致讲下函数的调用。
举个例子,求绝对值的函数 abs(),这个函数只接受一个参数。函数的使用可以查看官方文档:
也可以在交互式命令行下通过 help(abs) 来查看 abs 函数的帮助信息。
现在尝试调用 abs() 函数:
>>> abs(-1)
1
>>> abs(1)
1
因为 abs 只接受一个参数,若是传入的参数个数不为 1,会报 TypeError 的错误,信息中也会给出错误的提示:
>>> abs(-1, 1)
Traceback (most recent call last):
File "", line 1, in
TypeError: abs() takes exactly one argument (2 given)
这里表示,abs() 函数只接受一个参数,但是却提供了两个参数。
abs() 的参数接收的是数值,若是传入的类型错误,同样也会报错:
>>> abs('1')
Traceback (most recent call last):
File "", line 1, in
TypeError: bad operand type for abs(): 'str'
这里给出的错误提示表示 str 不是可接受的类型。
这就是函数调用,同时也需要注意的一些地方。要了解函数调用需要的几个参数,以及参数的类型。
定义函数
现在讲一下函数的定义,函数定义要使用 def 语句,后面紧跟的是函数名,括号,包含在括号内的参数以及冒号,然后在缩进块编写函数体,如果有返回值的话,则使用 return 语句返回。
还是以求绝对值为例,这里自定义函数实现:
def my_abs(num):
if num >= 0:
return num
else:
return -num
当执行 return 时,函数即为执行完毕,直接返回结果。例子中,简单使用了条件判断,函数内部可以通过使用条件判断以及循环