python 09 函数参数初识

01 今日内容大纲

  1. 内容回顾作业讲解
  2. 函数的初识
  3. 函数的结构与调用
  4. 函数的返回值
  5. 函数的参数

02 昨日内容回顾作业讲解

  1. 文件操作初识

    三部曲:

    • 打开文件open()。
    • 操作文件(文件句柄进行操作)。
    • 关闭文件。
    • 文件路径path,编码方式:encoding, mode:.
  2. 读,写,追加。

    • 读: r rb r+,r+b
      • read()
      • read(n) :
        • r: read(n) n 是字符。
        • rb:read(n) n 字节。
      • readline() strip() '\n,\t, '
      • readlines() ['第一行\n','第二行\n',]
      • for 循环 对文件句柄。
    • 写:w,wb,w+,w+b
      • w: 没有文件创建新文件,写入内容。
      • w: 有文件,先清空,在写入新内容。
    • 追加:a,ab,a+,a+b
      • a: 没有文件创建新文件,追加内容。
      • a: 有文件,追加新内容。
  3. r+: 先读,后写。

  4. 其他功能:tell() seek() flush()

  5. with open() as f1:

  6. 文件的改的操作。

03 今日内容

  1. 函数的初识

    • 写一个获取字符串总个数的代码,不能用len:

      s1 = 'fjkdsfjdssudafurpojurojregreuptotuproq[t'
      # python没有len
      count = 0
      for i in s1:
          count += 1
      print(count)
      
      
    • 写一个获取列表总个数的代码:

      l1 = [1, 2, 3, 4, 5, 6]
      count = 0
      for i in l1:
          count += 1
      # print(count)
      
      
      

      这样的写代码low,
      重复代码太多。
      代码的可读性差。

    • 利用函数写出上面的功能:

      s1 = 'fsjkdafshdjfsdhafjksda'
      l1 = [1,2,3,4,5,6]
      
      def my_len(s):
          count = 0
          for i in s:
              count += 1
          print(count)
      my_len(s1)
      my_len(l1)
      
      
    • 函数:以功能(完成一件事)为导向,登录,注册,len,一个函数就是一个功能。 随调随用。

    • 函数的优点:

      • 减少代码的重复性。
      • 增强了代码的可读性。
  2. 函数的结构与调用

    • 结构: def 关键字,定义函数。
      meet 函数名:与变量设置相同,具有可描述性。
      函数体 :缩进。函数中尽量不要出现 print

    • 函数什么时候执行?

      • 当函数遇到 函数名() 函数才会执行!!!

        def meet():
            print('打开tantan')
            print('左滑一下')
            print('右滑一下')
            print('找美女')
            print('悄悄话....')
            print('约....走起...')
        meet()
        meet()
        meet()
        
  3. 函数的返回值

    def meet():
        print('打开tantan')
        print('左滑一下')
        return
        print('右滑一下')
        print('找美女')
        print('悄悄话....')
        print('约....走起...')
    meet()
    return: 在函数中遇到return直接结束函数。
    
    def meet():
        print('打开tantan')
        print('左滑一下')
        print('右滑一下')
        print('找美女')
        print('悄悄话....')
        print('约....走起...')
        return '妹子一枚'
    
    ret = meet()
    print(ret)
    print(meet())
    return 将数据返回给函数的执行者,调用者 meet()。
    s1 = 'jfdkslfjsda'
    ret = len(s1)
    print(ret)
    
    
    def meet():
        print('打开tantan')
        print('左滑一下')
        print('右滑一下')
        print('找美女')
        print('悄悄话....')
        print('约....走起...')
        # return '妹子一枚'
        return '妹子', 123, [22, 33]
    ret= meet()
    # ret,ret1,ret2 = meet()
    print(ret,type(ret))
    # return 返回多个元素 是以元组的形式返回给函数的执行者。
    
    • 返回值的总结:
      • 在函数中,终止函数。
      • return 可以给函数的执行者返回值:
        • return 单个值 单个值
        • return 多个值 (多个值,)
  4. 函数的参数

    def meet():
        print('打开tantan')
        print('进行筛选:性别:女')
        print('左滑一下')
        print('右滑一下')
        print('找美女')
        print('悄悄话....')
        print('约....走起...')
    
    s1 = 'jfdsklafjsda'
    l1 = [1,2,3]
    len(s1)
    
  • 函数的传参:让函数封装的这个功能,盘活。
    分两个角度:实参,形参。
def meet(sex):  #函数的定义:接受的参数形式参数
    print('打开tantan')
    print('进行筛选:性别:%s' %(sex))
    print('左滑一下')
    print('右滑一下')
    print('找美女')
    print('悄悄话....')
    print('约....走起...')

meet('男')  # 函数的执行传的参数 :实际参数
  • 实参角度

    1.位置参数: 从左至右,一一对应。

    - def meet(sex,age,skill):
          print('打开tantan')
          print('进行筛选:性别:%s,年龄:%s,%s' %(sex,age,skill))
          print('左滑一下')
          print('右滑一下')
          print('找美女')
          print('悄悄话....')
          print('约....走起...')
    
    meet('女',25,'python技术好的',)
    
    写一个函数,只接受两个int的参数,函数的功能是将较大的数返回。
    def compile(a,b):
        c = 0
        if a > b:
            return c
        else:
            return c
    print(compile(10,20))
    print(compile(1000,1))
    compile(1000,20)
    
    三元运算符: 简单的if else
    a = 1000
    b = 2000
    if a > b:
        c = a
    else:
        c = b
    print(c)
    
    a = 1000
    b = 2000
    c = a if a > b else b
    def complie(a,b):
        c = a if a > b else b
        return c
    
    def complie(a,b):
        return a if a > b else b
    
    
    1. 关键字参数
      一一对应
    def meet(sex,age,skill,hight,weight,):
          print('打开tantan')
          print('进行筛选:性别:%s,年龄:%s,技术:%s,身高:%s,体重%s' %(sex,age,skill,hight,weight))
          print('左滑一下')
          print('右滑一下')
          print('找美女')
          print('悄悄话....')
          print('约....走起...')
    
    meet(age=25,weight=100,hight=174,skill='python技术好的',sex='女')
    
    函数:传入两个字符串参数,将两个参数拼接完成后形成的结果返回。
    一一对应
    def meet(sex,age,skill,hight,weight,):
      print('打开tantan')
        print('进行筛选:性别:%s,年龄:%s,技术:%s,身高:%s,体重%s' %(sex,age,skill,hight,weight))
        print('左滑一下')
        print('右滑一下')
        print('找美女')
        print('悄悄话....')
        print('约....走起...')
    
    meet(age=25,weight=100,hight=174,skill='python技术好的',sex='女')
    
    函数:传入两个字符串参数,将两个参数拼接完成后形成的结果返回。
    def func(a,b):
        return a + b
    print(func(b='太白',a='无敌'))
    
    1. 混合参数

      # 混合参数
      # 位置参数一定要在关键字参数的前面。
      def meet(sex,age,skill,hight,weight,):
          print('打开tantan')
          print('进行筛选:性别:%s,年龄:%s,技术:%s,身高:%s,体重%s' %(sex,age,skill,hight,weight))
          print('左滑一下')
          print('右滑一下')
          print('找美女')
          print('悄悄话....')
          print('约....走起...')
          return '筛选结果:性别:%s,体重%s' %(sex,weight)
      
      print(meet('女',25,weight=100,hight=174,skill='python技术好的'))
      
  • 形参角度:

    1. 位置参数

      def meet(sex,age,skill):
          print('打开tantan')
          print('进行筛选:性别:%s,年龄:%s,%s' %(sex,age,skill))
          print('左滑一下')
          print('右滑一下')
          print('找美女')
          print('悄悄话....')
          print('约....走起...')
      
      meet('女',25,'python技术好的',)
      
      写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
      def func(l):
          if len(l) > 2:
              return l[:2]
          else:
              return l
      # print(func([1,2,3,4,5]))
      print(func([1,]))
      
      def func(l):
          c = l[:2] if len(l) > 2 else l
          return c
      print(func([1,2,3,4,5]))
      print(func([1,]))
      
      def func(l):
          return l[:2]
      # l1 = [1,]
      # print(l1[:2])
      
    2. 默认参数

      默认值参数
      默认参数设置的意义:普遍经常使用的。
      
      def meet(age,skill='python技术好的',sex='女',):
          print('打开tantan')
          print('进行筛选:性别:%s,年龄:%s,技能:%s' %(sex,age,skill))
          print('左滑一下')
          print('右滑一下')
          print('找美女')
          print('悄悄话....')
          print('约....走起...')
      
      # meet(25,'python技术好的',)
      meet(25,'运维技术好的','男')
      
      open()
      

04 今日总结

  1. 函数:
  2. 函数的作用:以功能为导向,减少代码重复,使代码可读性好。
  3. 函数的结构,函数的执行。
  4. 函数的返回值:return 1,终止函数给函数的调用者返回值。
  5. 函数的参数:
    • 实参角度
      • 位置参数
      • 关键字参数
      • 混合参数
    • 形参角度
      • 位置参数
      • 默认参数

05 预习内容

posted @ 2019-05-09 16:19  迷途小书童-  阅读(123)  评论(0编辑  收藏  举报