介绍返回值 | Python从入门到精通:高阶篇之七

简介: 本节重点介绍了返回值是什么,以及return、break、continue的区别。

参数解包 | Python从入门到精通:高阶篇之六

返回值

def sum(*nums):
    # 定义一个变量,来保存结果
    result = 0
    # 遍历元组,并将元组中的数进行累加
    for n in nums :
        result += n
    print(result)

sum(123,456,789)

执行结果:

image.png

此时我们有一个问题,函数计算出来的结果直接输出了,我们无法利用这个结果进行其他操作,这是不好的,我们希望这个结果是直接返回的。此时我们就需要用到返回值

返回值,就是函数执行以后返回的结果。可以通过 return 来指定函数的返回值,可以直接使用函数的返回值,也可以通过一个变量来接收函数的返回值。

def fn():
    # return 100
    # return 'Hello'
    # return [1,2,3]
    # return {'k':'v'}
     def fn2() :
        print('hello')

    return fn2 # 返回值也可以是一个函数

r =fn() # 此时这个函数的执行结果就是它的返回值
r()
#print(fn())
#print(r)

执行结果:

image.png
image.png
image.png
image.png
image.png
image.png

return 后边跟什么值,函数就会返回什么值,return 后边可以跟任意的对象,返回值甚至可以是一个函数。

此时会有一个疑问,直接return则会返回什么呢?

def fn2() :
    #return 
    a = 10

r = fn2()
print(r)

执行结果:

image.png
image.png

此时可知,如果仅仅写一个return 或者 不写return,则相当于return None。

def fn3():
    print('hello')
   # return
    print('abc')

r = fn3()
#print(r)

执行结果:

image.png
image.png

在函数中,return后的代码都不会执行,return 一旦执行函数自动结束。

我们发现跟break有点类似,我们接着进行分析。

def fn4() :
    for i in range(5):
        if i == 3 :
            break   # 用来退出当前循环 
        print(i)
    print('循环执行完毕!')

fn4()

执行结果:

image.png
刚进行循环不跳出时
image.png
break跳出

如果改为continue呢?

continue  # 用来跳过当次循环

执行结果:

image.png

那么return呢?

return   # return 用来结束函数

执行结果:

image.png

我们需要对这三个有准确的把握。
此时,我们可以对求和函数进行改造。

def sum(*nums):
    # 定义一个变量,来保存结果
    result = 0
    # 遍历元组,并将元组中的数进行累加
    for n in nums :
        result += n
    return result

r = sum(123,456,789)

# print(r)
print(r + 778)

执行结果:

image.png
image.png
image.png

此时的结果,我们可以进行再次计算或者直接输出。

def fn5():
    return 10

print(fn5)
print(fn5())

执行结果:

image.png

fn5 和 fn5()的区别
print(fn5) 是fn5是函数对象,打印fn5实际是在打印函数对象
print(fn5()) 是fn5()是在调用函数,打印fn5()实际上是在打印fn5()函数的返回值 10。

函数的存在一定是为了实现某种功能,利用函数来保存代码。

配套视频课程,点击这里查看

获取更多资源请订阅Python学习站

相关文章
|
3月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
458 7
|
4月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
411 1
|
5月前
|
API 数据安全/隐私保护 开发者
Python自定义异常:从入门到实践的轻松指南
在Python开发中,自定义异常能提升错误处理的精准度与代码可维护性。本文通过银行系统、电商库存等实例,详解如何创建和使用自定义异常,涵盖异常基础、进阶技巧、最佳实践与真实场景应用,助你写出更专业、易调试的代码。
231 0
|
5月前
|
IDE 开发工具 数据安全/隐私保护
Python循环嵌套:从入门到实战的完整指南
循环嵌套是Python中处理多维数据和复杂逻辑的重要工具。本文通过实例讲解嵌套循环的基本用法、常见组合、性能优化技巧及实战应用,帮助开发者掌握其核心思想,避免常见错误,并探索替代方案与进阶方向。
471 0
|
3月前
|
Cloud Native 算法 API
Python API接口实战指南:从入门到精通
🌟蒋星熠Jaxonic,技术宇宙的星际旅人。深耕API开发,以Python为舟,探索RESTful、GraphQL等接口奥秘。擅长requests、aiohttp实战,专注性能优化与架构设计,用代码连接万物,谱写极客诗篇。
Python API接口实战指南:从入门到精通
|
3月前
|
存储 Java 调度
Python定时任务实战:APScheduler从入门到精通
APScheduler是Python强大的定时任务框架,通过触发器、执行器、任务存储和调度器四大组件,灵活实现各类周期性任务。支持内存、数据库、Redis等持久化存储,适用于Web集成、数据抓取、邮件发送等场景,解决传统sleep循环的诸多缺陷,助力构建稳定可靠的自动化系统。(238字)
667 1
|
4月前
|
调度 数据库 Python
Python异步编程入门:asyncio让并发变得更简单
Python异步编程入门:asyncio让并发变得更简单
270 5
|
7月前
|
Python
Python字符串格式化利器:f-strings入门指南
Python字符串格式化利器:f-strings入门指南
426 80
|
4月前
|
数据采集 存储 XML
Python爬虫入门(1)
在互联网时代,数据成为宝贵资源,Python凭借简洁语法和丰富库支持,成为编写网络爬虫的首选。本文介绍Python爬虫基础,涵盖请求发送、内容解析、数据存储等核心环节,并提供环境配置及实战示例,助你快速入门并掌握数据抓取技巧。

推荐镜像

更多