Python基础day04【函数】

  • 视频、源码、课件、软件、笔记:超全面Python基础入门教程【十天课程】博客笔记汇总表【黑马程序员】
  • Python基础day04【字典】

  

目录

3.函数

函数的定义和调用

函数定义 PEP8规范

快速按照PEP8规范格式化代码

函数的文档说明

查看函数的文档注释:Ctrl+B

自定义函数文档注释

书写带参数的函数

局部变量

全局变量

返回值

<1>“返回值”介绍

<2>带有返回值的函数

<3>保存函数的返回值

return返回多个数据值

函数返回值解析

函数的嵌套调用

函数应用:打印图形和数学计算

打印图形

数学计算

函数的参数

<1> 定义带有参数的函数

<2> 调用带有参数的函数

<3> 练一练

<4> 调用函数时参数的顺序

<4> 小总结

day04总结


3.函数

 print():打印输出
 input():输入
 len():求容器长度的
 ...
 函数可以实现一个具体的功能。

如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数

函数的定义和调用

Python基础day04【函数】_第1张图片  Python基础day04【函数】_第2张图片

Python基础day04【函数】_第3张图片

函数定义 PEP8规范

Python基础day04【函数】_第4张图片  Python基础day04【函数】_第5张图片

Python基础day04【函数】_第6张图片

快速按照PEP8规范格式化代码

Python基础day04【函数】_第7张图片

函数的文档说明

查看函数的文档注释:Ctrl+B

Python基础day04【函数】_第8张图片

Python基础day04【函数】_第9张图片

Python基础day04【函数】_第10张图片

自定义函数文档注释

Python基础day04【函数】_第11张图片

Python基础day04【函数】_第12张图片

书写带参数的函数

好处: 可以使函数代码更加通用,适用更多的场景。

Python基础day04【函数】_第13张图片

Python基础day04【函数】_第14张图片

Python基础day04【函数】_第15张图片

局部变量

  1. 局部变量的作用域(作用范围): 当前函数的内部。
  2. 局部变量的生存周期:在函数调用的时候被创建,函数调用结束之后,被销毁(删除)。
  3. 局部变量只能在当前函数的内部使用,不能在函数的外部使用。

Python基础day04【函数】_第16张图片  Python基础day04【函数】_第17张图片

Python基础day04【函数】_第18张图片

全局变量

  1. 全局变量:就是在函数外部定义的变量。
  2. 在函数内部可以访问全局变量的值,如果想要修改全局变量的值,需要使用 global 关键字声明。

Python基础day04【函数】_第19张图片

Python基础day04【函数】_第20张图片

返回值

在函数中定义的局部变量,或者通过计算得出的局部变量, 想要在函数外部访问和使用,此时就可以使用 return 关键字,将这个返回值返回。

Python基础day04【函数】_第21张图片

Python基础day04【函数】_第22张图片

<1>“返回值”介绍

现实生活中的场景:

我给儿子10块钱,让他给我买包烟。这个例子中,10块钱是我给儿子的,就相当于调用函数时 传递参数。让儿子买烟这个事情最终的目标是,让他把烟给你带回来然后给你。此时烟就是返回值。

开发中的场景:

定义了一个函数,获取室内温度。想一想是不是应该把这个结果给调用者?(是)

只有调用者拥有了这个返回值,才能够根据当前的温度做适当的调整。

综上所述:

  • 所谓“返回值”,就是程序中函数完成一件事情后,最后给调用者的结果

<2>带有返回值的函数

想要在函数中把结果返回给调用者,需要在函数中使用return

如下示例:

def add2num(a, b):
    c = a+b
    return c

或者

def add2num(a, b):
    return a+b

<3>保存函数的返回值

在本小节刚开始的时候,说过的“买烟”的例子中,最后儿子给你烟时,你一定是从儿子手中接过来。程序也是如此,如果一个函数返回了一个数据,那么想要用这个数据,那么就需要保存。

保存函数的返回值示例如下:

Python基础day04【函数】_第23张图片

return返回多个数据值

程序代码遇到一个 return 之后,后续的代码不再执行。

Python基础day04【函数】_第24张图片

Python基础day04【函数】_第25张图片

1. return 关键字后边可以不写数据值, 默认返回 None。
def func():
    xxx
    return   # 返回 None,终止函数的运行的。
 ​
2. 函数可以不写 return,返回值默认是 None。
def func():
    xxx
    pass

函数返回值解析

Python基础day04【函数】_第26张图片

Python基础day04【函数】_第27张图片

函数的嵌套调用

一个函数里面又调用了另外一个函数,这就是所谓的函数嵌套调用

Python基础day04【函数】_第28张图片

如果函数A中,调用了另外一个函数B,那么先把函数B中的任务都执行完毕之后,才会回到上次函数A执行的位置。

Python基础day04【函数】_第29张图片  Python基础day04【函数】_第30张图片

函数应用:打印图形和数学计算

打印图形

目标

  • 感受函数的嵌套调用
  • 感受程序设计的思路,复杂问题分解为简单问题

思考&实现1

  1. 写一个函数打印一条横线
  2. 打印自定义行数的横线

Python基础day04【函数】_第31张图片  Python基础day04【函数】_第32张图片

数学计算

思考&实现2

  1. 写一个函数求三个数的和
  2. 写一个函数求三个数的平均值

Python基础day04【函数】_第33张图片  Python基础day04【函数】_第34张图片

函数的参数

思考一个问题,如下:

现在需要定义一个函数,这个函数能够完成2个数的加法运算,并且把结果打印出来,该怎样设计?下面的代码可以吗?有什么缺陷吗?

   def add2num():
       a = 11
       b = 22
       c = a+b
       print c

为了让一个函数更通用,即想让它计算哪两个数的和,就让它计算哪两个数的和。在定义函数的时候可以让函数接收数据,这就是函数的参数

<1> 定义带有参数的函数

示例如下:

def add2num(a, b):
    c = a+b
    print c

<2> 调用带有参数的函数

以调用上面的add2num(a, b)函数为例:

def add2num(a, b):
    c = a+b
    print c

add2num(11, 22) # 调用带有参数的函数时,需要在小括号中,传递数据

调用带有参数函数的运行过程:

Python基础day04【函数】_第35张图片

<3> 练一练

要求:定义一个函数,完成前2个数完成加法运算,然后对第3个数,进行减法;然后调用这个函数。

  • 使用def定义函数,要注意有3个参数
  • 调用的时候,这个函数定义时 有几个参数,那么就需要传递几个参数

Python基础day04【函数】_第36张图片

<4> 调用函数时参数的顺序

>>> def test(a,b):
...     print(a,b)
... 
>>> test(1,2)
1 2
>>> test(b=1,a=2)
2 1
>>> 
>>> test(b=1,2)
  File "", line 1
SyntaxError: positional argument follows keyword argument
>>> 
>>>

<4> 小总结

  • 定义时小括号中的参数,用来接收参数用的,称为 “形参”。
  • 调用时小括号中的参数,用来传递给函数用的,称为 “实参”。

day04总结

Python基础day04【函数】_第37张图片

Python基础day04【函数】_第38张图片

你可能感兴趣的:(Python基础,python,编程语言,函数)