L6-5 传递参数

一、课堂引入:

上节课我们学习了函数的基本概念和应用,本节课我们将会全面的学习函数中的参数问题。

二、函数参数

函数的基本格式:

def function(参数1,参数2):

# def:定义函数
# function() 函数名
# 参数1和参数2自己定义

参数分为形参和实参:

# 形参:定义函数时括号内写的参数。

# 实参:在调用函数时括号内传进来的值。

 

参数种类:位置参数、默认参数、可变长参数和关键字参数。

#1、位置参数:按照从左到右的顺序定义的参数
        位置形参:必选参数
        位置实参:按照位置给形参传值
def foo(x,y):
    print(x,y)
foo(1,2)
# foo(1,2,3) 但凡被位置定义的参数,必须要被传值,不然会被报错,多一个不行,少一个也不行

 

#2、默认参数:形参在定义时就已经为其赋值
        可以传值也可以不传值,经常需要变得参数定义成位置形参,变化较小的参数定义成默认参数(形参)
        注意的问题:
                1. 只在定义时赋值一次
                2. 默认参数的定义应该在位置形参右面
                3. 默认参数通常应该定义成不可变类型
def bar(x,y=8):
    print(x,y)
bar(10)
# bar(10,12)

 

# 3.可变参数:实参值的个数不固定
# def soo(x,y,*z):
#     print(x,y,z)
# soo(1,2,3,4,5)

# def foo(x,y,*args):
#     print(x,y)
#     print(args)
# foo(1,2,*[3,4,5])
# def foo(x,y,**kwargs):
#             print(x,y)
#             print(kwargs)
#         foo(1,y=2,a=1,b=2,c=3)

def information_foo(x,y,**kwargs):
    print(x,y)
    print(kwargs)
information_foo(1,y=2,a=2,c=10)

 

#4、关键字参数:按照key=value的形式定义的实参
        无需按照位置为形参传值
        注意的问题:
                1. 关键字实参必须在位置实参右面
                2. 对同一个形参不能重复传值
def information(name,age):
  print(name,age)
# information("Rita",17)
# 优化
information(age=17,name="Rita")

 三、return的使用

# return():是函数结束的标志,函数体中可以有多个return,但是只要执行一次,整个函数就结束了
def f1():
    print("first")
    return 1
    print("second")
    return 2
f1()
posted @ 2019-09-22 10:29  小小_小花儿  阅读(223)  评论(0编辑  收藏  举报