关于python返回值return用法详解

 更新时间:2024年12月20日 11:51:08   作者:姬嘉晗-19期-河北工职大  
这篇文章主要介绍了python中的return关键字,包括其含义、作用、默认返回值、不同整数值的含义、返回值的类型、函数作为参数传递以及在类方法中的特殊情况,需要的朋友可以参考下

一.含义

        "return"是编程语言中的一个关键字,通常用于函数或方法的结尾,表示将执行结果返回给调用者。

        通俗讲就是一个事物反馈给你的东西。就像你一拍桌子,会返回声音和力的反作用力。

二.作用

负责函数返回值,返回一个参数或数据等。

退出当前函数,导致return下方的(函数体内部的‘缩进的’)代码不执行。(在使用try语句时除外)

def fun():
    print('hhh')
    return 'ok'  # 执行到该return语句时,函数终止,后边的语句不再执行
    print('ooo')


def func():
    try:
        print('hhh')
        return 'ok'  # 会在执行finally后才执行
    finally:  # finally语句块中的语句依然会执行,无论是否发生异常,都会在函数返回之前执行
        print('ooo')


print(fun())
print('----------')
print(func())

'''
运行结果:
hhh
ok
----------
hhh
ooo
ok
'''

三.没有return时

所有函数在没有指定返回值时都有一个默认的返回值None。如果函数没有return语句,则默认返回None.None表示空的意思。

但函数中不一定必须要存在return,return存在与否取决于其功能和用途。

# 设定一个基础图形
def line():
    print('-' * 10)

# 利用循环创建出新的图像
def total(num):
    i = 0
    while i < num:
        line()
        i += 1
    # 不加return最后结果会有一个None
    # return 1

print(total(5))

'''
运行结果:
----------
----------
----------
----------
----------
None
'''

四.return 1或0或-1的区别(int值)

  • 当return返回一个int值时,具体含义取决于具体的上下文和用途。
  • 表示计算结果时,如果函数的目的是进行某种计算并返回一个整数值作为结果,那么return语句将这个计算结果返回给调用者。
# 两数相加
def add(a, b):
    sum = a + b
    return sum

result = add(3, 4)

# 此时运行结果是7
  • 当其表示状态时
return 1return 0return -1
正常运行状态下return 1通常用于表示程序或函数在执行过程中遇到了问题,未能正常完成其任务。在主函数中,这可能意味着程序异常终止。在大多数编程语言中,return 0用于表示程序或函数已成功完成其任务,并正常退出。这是约定俗成的惯例,也是操作系统和其他程序用来判断程序是否正常结束的标志。return -1通常用于表示函数遇到了严重错误或无法继续执行的情况
在布尔值(bool)中表示布尔值表示布尔值一般不直接对应布尔值的True或False,表示执行错误
在特殊情况下(不重要)return 1也可以表示某种特定条件的达成或成功,尽管这种情况较少见都表示正常在一些复杂的系统或库中,负返回值可能用于指示不同类型的错误或异常

五.返回值返回的类型

一般情况下,可以返回任意类型。

  • 当返回单个值时,返回的就是他原本的类型
def return_type():
    # return 1, 2
    return [1, 2]

print(return_type())
print(type(return_type()))

'''
运行结果(其他类型同理):
[1, 2]
<class 'list'>
'''
  • 当返回多个值时,默认返回元组(tuple)
def return_type():
    return 1, 2

print(return_type())
print(type(return_type()))


'''
运行结果:
(1, 2)
<class 'tuple'>
'''

六.函数作为参数传递

def test1():
    return 50

def test2(num):
    print(num)

# 保存函数test1的返回值
result = test1()
# 将函数返回值所在变量作为参数传递到test2中
test2(result)

# 打印结果:50

七.print()和return的区别

(虽然他们可能没有太大关系)

print()return
功能用途主要用于在控制台输出信息将处理结果返回给调用者
返回值特性没有返回值的概念可以返回函数计算后的任意类型数据,默认为None
终止情况一般情况下不会终止在函数中,一般情况下return下代码不执行
应用场景适用于需要即时展示程序执行进度或中间结果的场景,如调试等多用于需要在计算后继续处理结果的场景,如数据计算、条件判断等
  • 一般情况下,return和print也是可以混合使用的。但建议使用第二种方法。
# 第一种
def return_p1():
    return print('hhh')

return_p1()
print('--------')

# 第二种
def return_p2():
    return 'ooo'

print(return_p2())

'''
运行结果:
hhh
--------
ooo
'''

例题:

错误原因:没有返回值,print和return认识不明确

八.特殊情况

在类方法中,__str__中的return后只能是字符串类型

用return print('  ')也会报错,如果要打印字符串可以用return f' '

总结

到此这篇关于关于python返回值return的文章就介绍到这了,更多相关python返回值return内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决Tkinter中button按钮未按却主动执行command函数的问题

    解决Tkinter中button按钮未按却主动执行command函数的问题

    这篇文章主要介绍了解决Tkinter中button按钮未按却主动执行command函数的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Python获取服务器信息的最简单实现方法

    Python获取服务器信息的最简单实现方法

    这篇文章主要介绍了Python获取服务器信息的最简单实现方法,涉及Python中urllib2库的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • 安装完Python包然后找不到模块的解决步骤

    安装完Python包然后找不到模块的解决步骤

    今天小编就为大家分享一篇安装完Python包然后找不到模块的解决步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 改进Django中的表单的简单方法

    改进Django中的表单的简单方法

    这篇文章主要介绍了改进Django中的表单的简单方法,Django是Python重多人气框架中最著名的一个,需要的朋友可以参考下
    2015-07-07
  • Python实现的文本简单可逆加密算法示例

    Python实现的文本简单可逆加密算法示例

    这篇文章主要介绍了Python实现的文本简单可逆加密算法,结合完整实例形式分析了Python自定义加密与解密算法具体实现与使用技巧,需要的朋友可以参考下
    2017-05-05
  • Python实现老照片修复之上色小技巧

    Python实现老照片修复之上色小技巧

    你会黑白照片上色吗,今天小编带你用python来给黑白照片上个色,这里我们借助百度AI开放平台的“黑白图像上色”接口,仅需二十行代码即可实现,感兴趣的朋友来看看吧
    2021-10-10
  • 基于keras中的回调函数用法说明

    基于keras中的回调函数用法说明

    这篇文章主要介绍了基于keras中的回调函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python调用腾讯API进行人像动漫化效果实例

    Python调用腾讯API进行人像动漫化效果实例

    最近上网的时候看到了一个有趣的东西,叫做人物动漫化,尝试着用python实现了,所以下面这篇文章主要给大家介绍了关于Python调用腾讯API进行人像动漫化效果的相关资料,需要的朋友可以参考下
    2023-06-06
  • tensorflow: variable的值与variable.read_value()的值区别详解

    tensorflow: variable的值与variable.read_value()的值区别详解

    今天小编就为大家分享一篇tensorflow: variable的值与variable.read_value()的值区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • 用Python简单实现Http服务端

    用Python简单实现Http服务端

    这篇文章主要为大家介绍了使用Python简单实现Http服务端示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07

最新评论