函数的初识

  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='无敌'))

    2. 混合参数
      # 混合参数
      # 位置参数一定要在关键字参数的前面。
      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()

posted @ 2019-08-04 10:47  病毒正在入侵中  阅读(138)  评论(0)    收藏  举报