Python笔记-函数1

python函数-day1

  1. 函数初识
1. 函数是以功能为导向的,一个函数封装了一个功能
2. 函数的优点:可以简化代码,提升代码的可读性
  1. 函数的结构
def 函数名():
    函数体
举例:
def complie(a, b):
    if a > b:
        return a
    else:
        return b
  1. 函数的调用
函数名(参数)
举例:
complie(10, 100)
  1. 函数的返回值
函数的返回值:
在函数中遇到return直接结束函数
return v1 
#返回值得数据类型为v1数据类型
return v1,v2,v3,v4.....
#返回值得数据类型为元组,(v1,v2,v3,v4)
举例:
#单个返回值
def func():
    return 'a'
print(func(),type(func()))
结果:
a <class 'str'>
#多个返回值
def func():
    return 'a', 'b', 'c'
print(func(),type(func()))
结果:
('a', 'b', 'c') <class 'tuple'>
  1. 函数的参数
函数参数的作用:是让函数封装的功能更为灵活
参数的分类:
实参:函数被调用时传入的参数,称为实参
1. 位置参数:实参与形参必须从左至右一一对应
def complie(a ,b): #形参a,b
    if a > b:
        return a
    else:
        return b
res = complie(10, 20) #实参10,20
print(res)
res = complie(10, 20, 30) #实参10,20
print(res)
结果:
20
TypeError: complie() takes 2 positional arguments but 3 were given
2. 关键字参数:一一对应即可,可以打乱位置
def complie(a ,b): #形参a,b
    if a > b:
        return a
    else:
        return b
res = complie(b=100,a=200) #实参关键字参数
print(res)
res = complie(b=100,a=200,c=120) #实参关键字参数
print(res)
结果:
200
TypeError: complie() got an unexpected keyword argument 'c'
3. 混合参数:即包含位置参数也包含关键字参数,并且位置参数必须在关键字参数之前
def meet(sex,age,hight,weight): #形参
    print('性别:%s,age:%s,hight:%s,weight:%s'%(sex,age,hight,weight))
meet('male', hight=170,age=23,weight=100) 
#实参,即有位置参数sex,也包含关键字参数
结果:
性别:male,age:23,hight:170,weight:100

形参:函数在定义时,接收的参数称为形参
1. 位置参数:同实参的位置参数是一种
2. 默认参数:给形参设置了默认值,当实参没有传入数据时,则使用默认值,默认值一般要设定成经常使用的
def meet(age,hight,weight=100,sex='male'): 
#形参,weight设置了默认值100,sex默认值为male
    print('性别:%s,age:%s,hight:%s,weight:%s'%(sex,age,hight,weight))
meet(hight=170,age=23)
结果:
性别:male,age:23,hight:170,weight:100
###注意:设置了默认值得形参,一定要放在没设置默认值得形参后面,否则会报如下错误:
SyntaxError: non-default argument follows default argument
  1. 三元运算
三元运算简单讲就是只能包含一个判断条件的if else语句
举例:
a = 10
b = 20
c = a if a>b else b
#如果a>b,则c=a,否则c=b

猜你喜欢

转载自www.cnblogs.com/vvbear/p/12894075.html