函数参数

---恢复内容开始---

一.函数:先定义一个事情或功能,等到需要是时候直接去用,这定义的东西就是函数.

二.函数的定义,函数名,函数体,及函数的调用

定义语法:

def 函数名()
    函数体(代码块)

函数名的定义规则和使用与变量基本一样.

函数的调用:

def yue():
    print("拿出手机")
    print("打开陌陌")
    print("找个漂亮的妹子")
    print("问她, 约不不约啊?")
    print("oK. 走你!")
yue() #调用函数 若没有就不回执行函数.可以多次调用
yue()

执行过程:

三.函数的返回:return

1.遇到return,此函数结束,函数后边的代码将不会执行

2.return 返回值 不止可以返回一个值,还可以返回多个值

def yue():
    print("约你")
    print("约我")
    print("约他")
    return "美女一枚"
girl = yue()
print(girl)  

def yue():
    print("约你")
    print("约我")
    print("约他")
    return "美女一枚"''萝莉''
girl = yue()
print(girl)  

关于返回值: 

  如果return什么都不写 或者 干脆不写return .那么返回的就是None
  如果return后面写了一个值. 则调用者可以接收一个结果
  如果return后面写了多个结果, 则调用者可以接收一个tuple, 调用者可以直接解构成
多个变量

四.函数的参数

参数,函数再调用的时候指定具体的一个变量的值,就是参数.语法:

def 函数名(参数列表)
    函数体

1.形参:

写在函数声明的位置的变量叫形参

1)位置参数,按照位置顺序来赋值

2)默认值参数:在函数声明的时候,可以给出函数参数的默认值,在调用的时候可以给出具体的值,也可以不给值,使用默认值.

def func (name,age,sex='') #sex = '男' 就是默认值函数 
    print('录入学生信息')
    print(name,age,sex)
    print('录入完毕')
func('张三',18)   #不用给sex 默认是sex='男'

注意,必须先声明位置参数,在声明默认值参数

2.实参

在函数调用的时候,给参数传递的值

1)位置参数

def yue(chat,address,age)#形参
    print('拿出手机')
    print('打开'+chat)
    print('找个'+address+'附近漂亮的'+str(age)+'岁妹子')
    print('约不约')
yue('微信','北京',18)  #实参  可以传多个值

结果:
拿出手机
打开微信
找个北京附近漂亮的18岁妹子
约不约

总结:在访问yue()的时候,我们按照位置的顺序分别把'微信','北京',18赋值给对应的chat.address,age

在传参的过程中,系统会默认按照位置把实参赋值到形参

2)关键字参数

位置参数好不好呢? 如果是少量的参数还算OK, 没有问题. 但是如果函数在定义的时候参数非常多怎么办?程序员必须记住, 我有哪些参数, 而且还有记住每个参数的位置, 否则函数就不能正常调用了. 那则么办呢? python提出了一种叫做关键字参数. 我们不需要记住每个参数的位置. 只要记住每个参数的名字就可以了

def yue (chat,address,age):
    print("拿出手机")
    print("打开"+chat)
    print("找个"+address+"附近漂亮的"+str(age)+"岁妹子")
    print("约不约")
yue(chat = '微信',age = 18,address='北京')#关键字参数  不需要考虑位置顺序

结果:
拿出手机
打开微信
找个北京附近漂亮的18岁妹子
约不约

3)混合参数

指位置参数和关键字参数混着用,在使用混合参数的时候,关键字参数必须在混合参数的后边.

总结:实参包括三个参数,位置参数,关键字参数,混合参数.....先后顺序是 位置参数----> 关键字参数

3.传参

给函数传递信息的时候将实际参数交给形式参数的过程称为传参

原文地址:https://www.cnblogs.com/ITdong-1/p/9303958.html