函数参数
1.默认参数
函数形参中,使用赋值运算符=
设置默认值,例如:
(若默认参数在函数内部被修改,则在后续函数的执行中该参数会使用修改后的值)
def func(a,b=3):
c=a+b
return c
print(func(1))
print(func(1,2))
# 输出:
4
3
有默认值的形参必须位于参数列表的最后,如:
def func1(b,a=1,c=3):
return a+b+c
print(func1(2))
否则将报错:SyntaxError: non-default argument follows default argument
2.关键字参数
在调用函数时,可指定参数的值,如:
def func(a,b):
return a**b
print(func(b=3,a=2))
# 输出:
8
3.可变长参数
可为元组或字典类型,于变量名前加星号*
或**
以示区分,分别对应元组和字典
3.1元组
def func(*a):
print(len(a))
for i in range(len(a)):
print(a[i],end=' ')
func(1,2,3)
# 输出:
3
1 2 3
3.2字典
def func(**x):
print(x)
func(a=1,b=2,c=3)
# 输出:
{'a': 1, 'b': 2, 'c': 3}
4.综合
可变长参数应位于可由实参确定长度的位置
def func(a,*b,c=3):
print(a)
print(b)
print(c)
func(1,2,3,4,c=5)
# 输出:
1
(2, 3, 4)
5
递归调用
1.求数x的n次方
def func(x,n):
if n == 0 :
if x == 0:
return "Error!"
else:
return 1
else :
return x * func(x,n-1)
2.求n的阶乘
def func(n):
if n<0:
return "Error!"
if n==0:
return 1
else:
return n*func(n-1)
函数/模块导入
导入后即可调用其他.py
文件中的函数
(1)直接导入模块
import 模块
(2)导入模块中的函数
from 模块名 import 函数名
(3)导入模块中的所有函数
from 模块名 import*