Python-函数基础(1)
目录
函数定义
什么是函数?
函数就是一个工具
定义函数三种形式
-
空函数
def 函数名(): pass
-
无参函数
def 函数名(): 代码块...
-
有参函数
def 函数名(x,y): print(x,y)
函数定义的特性
函数定义过程,只检测语法,不执行代码。
函数调用
调用函数,使用函数。
def guess():
x = 20
y = 30
if x > y:
print(x)
else:
print(y)
guess() # 函数调用. x
函数返回值
函数体内部代码经过一些逻辑处理得到的结果 就叫返回值
返回值(return):返回一个值(可以是所有数据类型)
返回值 可以拿来做其他事情。
def func():
name = "qinyj"
return name
name = func()
print(name) #qinyj
return的特性:
- return 返回一个值,如果没有return,默认返回None
- return 会终止函数,不运行下面的代码
- return 返回值可以返回多个值,用逗号隔开。
- return 返回多个值以元组形式接收。
函数的参数
有参函数
形参
形参就是函数在定义阶段内括号中定义的参数,,称之为形式参数,简称形参,本质就是变量名。
位置形参
从左到右依次接收位置实参的值。
def func(x,y):
print(x,y)
默认形参
在函数定义阶段,就默认被赋值。
默认参数的值通常应该是不可变数据类型。
def func(x,y=10):
print(x,y)
特点
- 如果没有给参数,使用默认值。
- 如果调用的时候传值,使用传的值。
- 默认形参必须放在位置形参后面。
实参
位置实参
从左到右依次依次传值给位置形参,一一对应,位置形参有多少个,位置实参也得有多少。
# 调用
func(1,2)
关键字实参
在调用函数的时候,按照key=values的形式指定参数传值,成为关键字实参。
# 调用
func(x=1,y=10)
特定
-
按照参数名传给参数值,函数的参数一般为0-3个。
-
可以打破位置的限制,为指定的形参赋值。
-
关键字实参必须写在位置实参的后面。
可变长参数
可变长参数指的是在调用函数的时候,传入的参数的个数可以不固定。
形参中的可变长参数 *
形参中的* 会将多余的位置实参全部接收,以元组的形式存储,然后把值赋给*后面的变量名,一般用args
可以使用解压缩的形式将值一个一个取出来。a,b,c = args
def sum_self(*args):
res = 0
for num in args:
res += num
return res
res = sum_self(1,2,3,4)
print(res) # 10
实参中的可变长参数 *
实参中的* ,会将*后面的变量名的值循环去除,打散成位置实参,
def func(x,y,z,*args):
print(x,y,z,args)
lt = [1,2,3]
func(1,2,3,*lt) # 1 2 3 (1, 2, 3)