python函数--初识,返回值,调用.参数

## 01 今日内容大纲

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





## 03 今日内容

1. 函数的初识

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

     ```python
     s1 = 'fjkdsfjdssudafurpojurojregreuptotuproq[t'
     # python没有len
     count = 0
     for i in s1:
         count += 1
     print(count)
     
     ```

   + 写一个获取列表总个数的代码:

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

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

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

     ```python
     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

   + 函数什么时候执行?

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

       ```python
       def meet():
           print('打开tantan')
           print('左滑一下')
           print('右滑一下')
           print('找美女')
           print('悄悄话....')
           print('约....走起...')
       meet()
       meet()
       meet()
       ```

       

3. 函数的返回值

   ```python
   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)
   
   ```

   ```python
   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. 函数的参数

   ```python
   def meet():
       print('打开tantan')
       print('进行筛选:性别:女')
       print('左滑一下')
       print('右滑一下')
       print('找美女')
       print('悄悄话....')
       print('约....走起...')
   
   s1 = 'jfdsklafjsda'
   l1 = [1,2,3]
   len(s1)
   ```

+ 函数的传参:让函数封装的这个功能,盘活。
  分两个角度:实参,形参。

```python
def meet(sex):  #函数的定义:接受的参数形式参数
    print('打开tantan')
    print('进行筛选:性别:%s' %(sex))
    print('左滑一下')
    print('右滑一下')
    print('找美女')
    print('悄悄话....')
    print('约....走起...')

meet('')  # 函数的执行传的参数 :实际参数
```

+ **实参角度**

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

  ```python 
  - 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
  
  ```

  2. 关键字参数
     一一对应

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

  3. 混合参数

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

     ```python
     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. 默认参数

     ```python
     默认值参数
     默认参数设置的意义:普遍经常使用的。
     
     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. 函数的参数:
   + 实参角度
     + 位置参数
     + 关键字参数
     + 混合参数
   + 形参角度
     + 位置参数
     + 默认参数
     + 


+ 函数是以功能为导向,减少重复代码,提高代码的可读性。

```
def func():
函数体

```

+ 函数的调用:func()

```
func()
func()
func()
```

+ 函数的返回值 return

+ 终止函数。
+ return 单个值:
+ return 多个值:(1,2,3,'alex')

+ 函数的参数:

+ 实参角度:位置参数,关键字参数,混合参数。
+ 形参角度:位置参数,默认参数。




 

posted @ 2020-06-15 08:30  水晶冰洛  阅读(204)  评论(0编辑  收藏  举报