定义函数
例子
def my_abs(x):
if x > 0:
print(x)
else:
print(-x)
空函数
- 空函数: pass语句就是什么都不做的意思, 缺少报错
def nop():
pass
参数检查
- 参数检查:使用内置函数
isinstance()
实现
只要不是 int 和 flaot 型就报错
def my_abs(x):
if not isinstance(x, (int, float)):
raise TypeError('bad operand type')
if x > 0:
print(x)
else:
print(-x)
返回值
- 函数可以同时返回多个值,但其实就是一个tuple。
默认参数
计算x的次方,默认2次, 可以调用power(5)或者power(5, 2)
def power(x, n=2):
s = 1
while n > 0:
n = n - 1
s = s * x
return s
- 默认的参数一定要指向不变的对象
可变参数
def sum_mul(*numbers):
sum = 0
for n in numbers:
sum = sum+n*n
return sum
调用:sum_mul(1,2,3,4)
可以sum_mul(0)
, 如果是 list 或者是 tuple 如:L=[1,2,3,4]
调用:
sum_mul(*L)
将list的所有元素作为可变参数传进去
关键字参数
见教程
命名关键字参数
见教程