美文网首页
Python学习24 : 函数的返回值

Python学习24 : 函数的返回值

作者: 简洁的书写 | 来源:发表于2024-09-02 19:50 被阅读0次

返回值的作用类似于下面的场景:主管向员工下达命令,让其去打印文件,员工打印好文件后并没有完成任务,还需要将文件交给主管。

函数返回值

定义了函数getArea,参数length用于接收数据,其功能为计算正方形面积,并将结果返回。
第7行,调用函数getArea,并将调用结果赋值给变量 result。
第8行,输出变量 result。

# 定义一个函数getArea,传入参数length
def getArea(length):
    area = length*length
    return area
# 调用函数,再将结果赋值给变量result
result = getArea(13)
print(result)

再次强调,当定义有返回值的函数时,调用函数的代码getArea(13)等同于一个变量。如图,如果我们只是调用该函数,不会有输出结果。我们可以使用print输出变量一样,将调用函数的代码输出

     return除了可以将函数内部的数据返回到函数外。return还有一些其他重要的特性。

任意类型的返回值,return的返回值没有类型限制,可以是一个变量名,一串字符串,甚至是一个表达式。

开饭了

定义一个函数 time,该函数包含 1 个参数 night,用于接收回家的时间点。该函数通过判断回家的时间点,来决定吃什么:

如果,时间点小于6,则返回 "回家做可乐鸡翅"

如果,时间点大于或等于6,则返回 "回家吃凉皮"

分两次调用函数并输出:

第一次,传入参数5调用该函数, 并输出。

第二次,传入参数7调用该函数, 并输出。

# TODO 定义一个函数time,传入参数night

def time(night):

    if night < 6:

        return "回家做可乐鸡翅"

    if night >= 6:

        return "回家吃凉皮"

# TODO 传入参数5调用该函数,并输出

print(time(5))

# TODO 传入参数7调用该函数,并输出

print(time(7))

    返回多个值

      定义的函数用于计算出正⽅形的周长和面积,它返回了两个值。当函数要返回多个值时,返回值间以逗号,隔开。此时函数的返回值,会以元组的格式返回。
   def getSize(length):
         perimeter = 4*length
         area = length*length
         return perimeter , area
   print(getSize(6))
最后运行显示的结果是(24,36)

return的位置

    注意,return是函数结束的标志。函数内可以有多个return,但只要执行一次,整个函数就会结束运行。所以return的位置决定了函数能够执行到哪一步。下面以函数中有循环语句为例,来讲解return位置的重要性。

     但是,如果 return 的位置在循环内部,当第1次循环时,就会执行到return语句。此时,整个函数就会结束运行,返回当前total的值1。
    

   回顾一下 print 和 return 的区别。简单来说,使用print的函数,会将结果直接输出,是为了显示信息。使用return的函数,是为了返回结果。并且返回值可以用变量接走,继续使用该返回值做其它事。

       那为什么不将函数中的数据保存到变量中,而是通过return将值返回到函数外呢?这是因为有些变量只在函数内有效,无法将数据传递到函数外。

       如图,我们在函数内定义并计算了变量area的值,但是在函数外print(area)会出现area未定义的报错。这是因为,在函数内部定义的变量,只能在函数内使用,出了函数就不能使用。这样的变量,称为局部变量。

    局部变量就是在函数内部定义的变量。局部变量只能在函数内使用,出了函数就不能使用。上图中的area就是局部变量。

  全局变量(Global Variable)除了在函数内部定义变量,Python 还允许在所有函数的外部定义变量,这样的变量称为全局变量。

定义了全局变量pi和函数getArea,然后调用该函数并输出。
简单来说,全局变量就是在函数外定义的变量。全局变量可以在函数内使用,也可以在函数外使用。
第5行的pi,虽然在函数内部,但是它只是被使用而非定义,所以它还是原来的全局变量。
注意:只有在函数内被定义的变量才是局部变量。

吃还是不吃

小倩和朋友去吃披萨,点了个12寸的,结果过了会儿服务员来了说:“不好意思现在做不了12寸了,您看换成两个6寸的可以吗?”

小倩会同意么,让我们编写程序来解决这个生活难题。

定义一个函数getArea,参数R用于接收半径的数据,参数pi作为圆周率π,设置默认值 3.14

该函数用于计算圆的面积,并将其返回。

然后分两次调用该函数:

第一次,传入参数 6(12寸pizza半径是6),赋值给变量bigSize;

第二次,传入参数 3(6寸pizza半径是3) ,赋值给变量smallSize。

如果 bigSize 大于两倍smallSize,输出“不吃了”;否则,输出“可以换”。

圆的面积: S = π*R*R

# TODO 定义函数getArea,用于计算圆的面积,并将其返回

def getArea(R,pi = 3.14):

    area = pi * R * R

    return area

# TODO 传入参数6调用该函数,赋值给变量bigSize

bigSize = getArea(6)

# TODO 传入参数3调用该函数,赋值给变量smallSize

smallSize = getArea(3)

# TODO 如果bigSize大于两倍smallSize,输出"不吃了";否则,输出"可以换"

if bigSize > 2*smallSize:

    print("不吃了")

else:

    print("可以换")

运行结果:不吃了

相关文章

  • day8-函数笔记(二)/2018-07-25

    函数学习 1.函数的返回值: python中每个函数都是有返回值的,返回值就是return后面的值。如果函数中没有...

  • Python教程,一步起飞,函数的返回值和作用域,你值得拥有

    前言 Python函数的学习内容,咱们更新了很多,今天我们继续带来Python函数的返回值和作用域,深化大家的函数...

  • Day7-函数

    1、函数的返回值 1.1 函数的返回值: python 中每个函数都是有返回值的,返回值就是return 后面的值...

  • day 9

    part 1 函数回顾 part 2 函数的返回值 1、 python 每个函数都有返回值,返回值就是return...

  • Python 函数之二(返回值、作用域、LEGB、销毁)

    一、函数返回值 先看几个例子 总结 Python 函数使用 return 语句返回 “返回值” 所有函数都有返回值...

  • Python函数进阶

    一、函数返回值 先看下几个例子: 总结: python函数使用return语句返回 "返回值" 所有函数都有返回值...

  • [Python学习路线]--Python基础no.06

    回顾上次所学,简单了解了在Python中有返回值、无返回值、有参、无参的函数。本节将学习的是Python中的lis...

  • python-函数

    参考廖雪峰python3知识点的总结 函数返回值--函数 函数可以作为函数的返回值: 函数作为返回值的使用:表示返...

  • 08 函数(补充)

    1.函数的返回值 python中每个函数都有返回值,返回值就是return后面的值,如果函数中没有return,那...

  • day8-函数

    1.函数的返回值: python中每个函数都是有返回值的,返回值就是return后面的值。如果函数中没有retur...

网友评论

      本文标题:Python学习24 : 函数的返回值

      本文链接:https://www.haomeiwen.com/subject/fxkhljtx.html