Python基础day04【函数(定义与调用、文档说明、传参函数、全局变量、返回值、嵌套调用)】

  

目录

3.函数

函数的定义和调用

函数定义 PEP8规范

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

函数的文档说明

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

自定义函数文档注释

书写带参数的函数

局部变量

全局变量

返回值

<1>“返回值”介绍

<2>带有返回值的函数

<3>保存函数的返回值

return返回多个数据值

函数返回值解析

函数的嵌套调用

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

打印图形

数学计算

函数的参数

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

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

<3> 练一练

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

<4> 小总结

day04总结


3.函数

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

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

函数的定义和调用

  

函数定义 PEP8规范

  

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

函数的文档说明

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

自定义函数文档注释

书写带参数的函数

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

局部变量

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

  

全局变量

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

返回值

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

<1>“返回值”介绍

现实生活中的场景:

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

开发中的场景:

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

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

综上所述:

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

<2>带有返回值的函数

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

如下示例:

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

或者

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

<3>保存函数的返回值

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

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

return返回多个数据值

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

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

函数返回值解析

函数的嵌套调用

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

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

  

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

打印图形

目标

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

思考&实现1

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

  

数学计算

思考&实现2

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

  

函数的参数

思考一个问题,如下:

现在需要定义一个函数,这个函数能够完成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) # 调用带有参数的函数时,需要在小括号中,传递数据

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

<3> 练一练

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

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

<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 "<stdin>", line 1
SyntaxError: positional argument follows keyword argument
>>> 
>>>

<4> 小总结

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

day04总结

猜你喜欢

转载自blog.csdn.net/weixin_44949135/article/details/113938959
今日推荐