初识函数

目录

1.函数的简介

2.函数的定义

3.返回值return

4.形参和实参

     形参(位置参数、默认参数、不定参数)

     实参(位置参数、关键字参数、混合参数)

5.第一类对象

6.函数的嵌套

      名称空间

      作用域

      global

      nonlocal

 

一.函数的简介

    对一段代码的封装(功能或者动作)

二.函数的定义

    def 函数名():

          函数体

    函数名()

ps: def是定义函数的关键字,函数名相当于一个变量名,函数体主要定义的功能,函数名() 调用一段函数。

 

三.返回值return

     遇到return之后的函数体就不会执行,return后面可以跟返回值,如果不跟返回值返回的结果为none,如果跟一个返回值就返回一个str,如果跟多个返回值就返回一个元组。调用者可以直接结构成多个变量。还可以用一个变量去接收return返回的值做进一步的判断。

def yue():
print("please take out your phone")
print("open the app for dating")
print("find a beautifull girl")
return "全都是old women"
print("ask for a data")
result = yue()
print(result)

def compare(a,b):
c = a if a > b else b
return c

result = compare(100,20)
print(result)
 

四.形参和实参和传参的概述

     形参(位置参数、默认参数、不定参数)

     写在函数声明的地方叫形参,相当于一个变量的存在,如果定义了形参那么必须给实参,否则会报错

      1.位置参数:顾名思义按照位置来的。

      2.默认参数:定义了默认参数的时候,调用的时候就不用给传参。

      3.不定参数(动态参数)

            *args:动态接手位置参数,以元组的形式保存

            **kwargs:动态接手关键字参数,以字典的形式保存

    执行顺序:位置 > *args > 默认值 > **kwargs  

* ** 在形参表示聚合,在实参表示打散

     实参(位置参数、关键字参数、混合参数)

     执行函数时给的参数,相当于一个变量的值。

    1.位置参数

    2.关键字参数

    3.混合参数

  执行顺序:位置参数在前关键字参数在后。

 

     传参 :在实参里给的值会被赋予给形参这个过程叫作传参。

 

五.第一类对象

    函数的本质就是变量,因此除了不能做运算以外,可以实现变量能做的所有操作。

六.函数的嵌套

      名称空间

       1.内置名称空间:解释器内部的一些东西如:input len range 等......

       2.全局名称空间:在全局py文件中定义...(变量,函数)

       3.局部名称空间:在函数内部的变量及函数

      作用域

         全局作用域:可以到处调用(内置名称空间+全局名称空间)globals()查看全局

          局部作用域:局部使用,函数内部,局部名称空间 locals()查看当前作用域

      global

           1.在局部创建全局变量

           2.在局部引入全局变量

      nonlocal

           在局部,内层函数引入外层函数的变量

 

posted @ 2019-04-15 15:10  ivy_wang  阅读(121)  评论(0编辑  收藏  举报