编写函数时,要在函数名前加def,参数后面有冒号

>>> def squareSum(L):	#计算平方和
>>>     sum = 0
>>>     for x in L:
>>>         sum += x * x
>>>     return sum

>>> L = [1, 2, 3, 4, 5]
>>> print(squareSum(L))
55

多个返回值:(通过type()可知其实还是一个返回值,类型是tuple

>>> import math

>>> def square_root(a, b, c):
>>>     root = math.sqrt(b*b - 4*a*c)
>>>     x1 = (-b + root) / (2 * a)
>>>     x2 = (-b - root) / (2 * a)
>>>     return x1, x2

>>> print(square_root(2, 3, 0))
>>> print(square_root(1, -6, 5))
(0.0, -1.5)
(5.0, 1.0)

默认参数:(默认参数只能定义在必需参数的后面,否则程序无法判断)

>>> def power(x, n = 2):
>>>     s = 1
>>>     while n > 0:
>>>         n -= 1
>>>         s = s * x
>>>     return(s)

>>> print(power(5, 3))  # 计算5的3次方
>>> print(power(6))		# 计算6的平方(因为默认指数为2)
125
36

可变参数:(可变参数前有个星号“*”)

>>> def average(*args):		#计算平均数
>>>     length = len(args)
>>>     sum = 0.0
>>>     if len(args) == 0:
>>>         return sum
>>>     for x in args:
>>>         sum += x
>>>     return sum / length

>>> print(average())
>>> print(average(1, 2))
>>> print(average(1, 2, 3, 4, 5))
0.0
1.5
2.4