day9

前方高能---初识函数

一.  什么是函数

  函数:对代码块和功能的封装和定义.

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

  def 函数名():

    函数体

  函数体:就是函数被执行之后要执行的代码.

三, 函数的返回

  执行完函数之后,我们可以使用return来返回结果.

函数中return的使用:

  1.函数中遇到return,此函数结束,不在继续执行.

def yue()
    print('打开手机')
    print('打开微博')
    print('进入阚清子和纪凌尘微博')
    return
    print('去留言,你喜欢大海,我爱过你.')     # 这句话不会被执行.
yue()

  2.给函数的调用者一个访问结果.

def yue()
    print('拉拉')
    print('啥呀')
    return '哒哒哒'
girl = yue()
print(girl)    # 哒哒哒

  函数的返回值可以有多个结果

def yue():
    print('拉拉')
    print('啥呀')
    print('大大')
    return '脉动','巴啦啦'
girl = yue()
print(type(girl))    # tuple

  总结一下: 1.遇到return,此函数结束,函数后面的东西将不会再执行

       2. return返回值.

  关于返回值:

      如果return什么都不写,或者干脆不写return,那么返回的就是None

      如果return后面写了一个值,则调用者可以接收一个结果.

      如果return后面写了多个结果,则调用者可以接收一个tuple,调用者可以直接解构成多个变量.

四. 函数的参数

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

    语法:

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

  关于参数:

  1, 形参

  写在函数声明的位置的变量叫形参,形式上的一个完整,表示这个函数需要xxx

  2, 实参

  在函数调用的时候给函数传递的值,叫实参,实际执行的时候给函数传递的信息,表示给函数xxx

  3, 传参

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

def yue(chat):    # chat 形参
      print('笨蛋')
      print('哈哈哈')
      print('想喝',chat)
      print('cheer up')
yue('脉动')    # 实参

len('字符串')    # '字符串'在这里就是实参
print('麻花藤')    # '麻花藤'就是实参

 参数的分类:

  1,位置参数

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

  分析: 在访问yue()的时候,我们按照位置的顺序分别把'微信','北京',18,赋值给chat.address,age.在传参过程中,系统会默认按照位置把实参赋值到形参.

练习: 编写编程,给函数传递两个参数a,b.比较啊,a,b的大小,返回a,b中最大的那个数.

答案:

def my_max(a,b):
    if a > b:
        return a
    else:
        return b
#有点麻烦,我们在这里学一个三元运算符.
def my_max(a,b):
    c = a if a > b else b    # 当a>b成立返回a,否则返回b
    return c

  2, 关键词参数

def  yue(chat,address,age):
       print('哈哈哈')
       print('打开'+chat)
       print('找个'+address+'附近漂亮的'+str(age)+'岁妹子')
       print('嘿嘿嘿')
yue(chat='微信',age=18,address='北京')    # 关键字参数

  3,可以把上面两种参数混合着使用,也就是说在调用函数的时候可以给出位置参数,也可以指定关键词参数.

# 函数参数
yue('微信',age=18,addreass='上海')    #正确.第一个位置赋值给chat,后面的参数开始指定关键字.

yue(age=18,'微信',addreass='广州')    # 错误,最开始使用了关键字参数,那么后面的微信的位置就串了,容易出现混乱.

  注意: 在使用混合参数的时候,关键字参数必须在位置参数后面.

综上: 在实参的角度来看,分为三种.

  1.位置参数

  2,关键字参数

  3, 混合参数,位置参数必须在关键字参数前面.

 

  在形参角度看,一共分为三种,

  位置参数,按照位置来赋值,到目前为止,我们编写的函数都是这种.

def  yue(chat,address,age):
       print('拿出手机')
       print('打开'+chat)
       print('找个'+address+'附近漂亮的'+str(age)+'岁妹子')
       print('呃呃呃')

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

def stu_info(name,age,sex=''):
    print('录入学生信息')
    print(name,age,sex)
    print('录入完毕')
stu_info('张强强',18)
  

 注意: 必须先声明位置参数,才能声明默认参数.

综上: 在形参的角度来看.

  1.位置参数

  2.默认值参数(大多数传进来的参数都是一样的,一般用默认参数.)

posted @ 2018-08-08 16:08  吧啦吧啦吧啦  阅读(103)  评论(0编辑  收藏  举报