9 函数的定义与实现[python基础]

2019-12-27  本文已影响0人  乱弹琴给

# 函数是什么?

函数(Function)是实现具有特定功能的代码

python内置了很多函数

            print();input();format();list();lower();upper()

开发者也可以创建自己的函数

# 函数的特点

隐藏实现功能的细节

重用代码

提高可读性,便于调试

# 函数的定义

    //定义函数的语法:

    //def 函数名(形式参数(形参)1,形参2...,形参n):

            要运行的代码(函数体)

            return 输出的数据(返回值)

# 函数的形参和实参

    //参数就是函数的输入数据,在程序运行时根据参数不同执行不同代码

    //定义函数时 规定参数 形参;在调用运行函数时,传入的数据 实参

# 函数的返回值,参数时函数的输入数据,返回值则是函数的输出结果,return不是必须的,但是return语句执行后,函数将中断执行。

        def calc_exchange_rate(amt, sourec, target):

            if source == "CNY" and target = "USD":

                result = amt / 6.7516

                return result

        r = calc_exchange_rate(100,"CNY","USD")

        print(r)

        print("汇率计算成功")

# 函数的使用技巧-1

设置参数默认值

            //为参数设置默认值,只需要在形参后面增加”= 具体值“即可

            def calc_exchange_rate(amt, sourec, target="USD"):

关键字传参 以形参形式传参

            def health-check(name,age,height,weight,hr,hbp,lbp,glu):

                print("您的健康状况良好")

            health_check("jack",32,178,85.5,70,120,80,4.3)   //可读性不好

                                                                health_check(name="jack",age=32,height=178,weight=85.5,hr=70,hbp=120,lbp=80,glu=4.3)  //但不推荐用这么多参数,可以封装到一个字典里

混合形式传参

            //*代表之后所有参数传参时必须使用关键字传参,这是混合形式传参。

            def health-check(name,age,*,height,weight,hr,hbp,lbp,glu):

                print("您的健康状况良好")

# 函数的使用技巧-2

序列传参

            def calc(a,b,c):

                return (a+b)*c

            l = [1,5,10]

            print(calc(*l))    //按序列传参,使用较少

字典传参

            //非常常见的使用技巧

            def health-check(name,age,height,weight,hr,hbp,lbp,glu):

                print("您的健康状况良好")

            param = {"name":"jack","age":,。。。。}

            health_check("jack",32,178,85.5,70,120,80,4.3)   //可读性不好

            health_check(**param)   //快速传递多参数,增加两个星号

返回值包含多个数据

            返回一个数据结构,比如 字典,列表,集合等

            def get_detail_info():

                dict1 = {

                        "emplyee":[

                        {"name":"张三",“salary":1800},

                         "name":"李四","salary"2000:,

                             ],

                            "device":[

                                {"id":"8837120","title":"XX笔记本"},

                                {"id":"3839011","title":"XX台式机"}

                                ],

                                "asset":[],

                                "project":[]

                             }

                return dict1

上一篇下一篇

猜你喜欢

热点阅读