0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

return-函数的返回值是什么

汽车电子技术 来源:安迪python学习笔记 作者:安迪python学习笔记 2023-02-23 10:52 次阅读
  • 1.定义
  • 2.分类
    1. 没有返回值
  • 4.有1个返回值
  • 5.有多个返回值
  • 6.一个自定义函数只执行一次return语句
  • 7.实操练习

1.定义

return关键字后接变量名或表达式可以将函数的计算结果返回到调用处。

变量或表达式等同于接收果汁、豆浆的杯子。

如果函数没有返回值,return可以省略不写。

没有返回值的意思是程序执行完毕之后,不需要给调用函数处提供数据。

2.分类

返回值分3种情况:

  1. 没有返回值
  2. 返回1个值

如果是1个返回值,直接返回内容本身的数据类型。

  1. 返回多个值

如果是多个返回值,返回的数据类型为元组。

【备注】是否需要写return,根据实际情况决定。

3. 没有返回值

def menu ():
    print('''
    学生信息管理系统
    ====功能菜单====
    1.录入学生信息
    2.查找学生信息
    3.删除学生信息
    4.修改学生信息
    5.退出系统
    ''')
menu()

【终端输出】

学生信息管理系统
    ====功能菜单====
    1.录入学生信息
    2.查找学生信息
    3.删除学生信息
    4.修改学生信息
    5.退出系统

menu [ˈmenjuː]菜单栏。

【代码解析】

def menu ():定义了一个函数,函数名为menumenu后的括号为空,表示这个函数没有参数

print语句是自定义函数要输出的内容。

因为我不需要函数返回任何内容,我要实现的功能是调用menu函数时,输出print语句中的字符即可。

因此自定义函数没有添加参数。

4.有1个返回值

def fun (x , y):
    sum = x + y 
    return sum   
fun(2,5)

【终端输出】

7

【代码解析】

def fun (x,y):函数名为fun,形式参数为xy

sum = x+y自定义函数要实现的求和功能。

return sumreturn关键字加变量名sum,意思是将sum返回给函数调用处。

【查看返回值的数据类型】

def fun (x,y):
    sum = x+y 
    return sum   
print(type(fun(2,5)))

【终端输出】

<class 'int'>

这里返回的数据类型为整数。

5.有多个返回值

def fun( x, y):
    sum=x+y
    mul=x*y
    return sum, mul 
fun(2,5)

【终端输出】

(7, 10)

【代码解析】

def fun (x,y):函数名为fun,形式参数为xy

sum = x+y自定义函数要实现的求和功能。

mul = x*y自定义函数要实现的求积功能。

return sum, mulreturn关键字加变量名summul,意思是将summul返回给函数调用处。

【查看返回值的数据类型】

def fun(x,y):
    sum=x+y
    mul=x*y
    return sum,mul
print(type(fun(2,5)))

【终端输出】

<class 'tuple'>

当有多个返回值的时候,返回的数据类型默认为元组。

6.一个自定义函数只执行一次return语句

def fun(x,y):
    sum=x+y
    mul=x*y
    return sum
    return mul    
fun(2,5)

【终端输出】

7

return语句和print语句不同,同等条件下,一个自定义函数中只执行一次return语句。

上述代码中有2个return语句,但程序只执行了第一个return sum语句,程序终端只返回了求和的值。

执行return的意思是程序到这里就终止了。

【体验代码】

def test ( ):
    print("测试函数!")
    return
    print("此句不会被执行!")
test( )

【终端输出】

测试函数!

【代码流程】

  1. test( )这是程序执行的第1行代码,表示调用test函数。
  2. def test ( ):程序执行的第2行代码,开始执行test函数。
  3. print("测试函数!")程序执行的第3行代码,输出字符测试函数!
  4. return程序执行的第4行代码,执行return后,程序就结束了。
  5. print("此句不会被执行!")程序已经结束,这句话不会被执行。

7.实操练习

我们把函数理解成一个自动售卖机,那我们购买到的饮料就是返回值。图片

【目标任务】

自定义一个函数,编写一个自动售卖机的小程序。

输入 1时,取货口会得到'一瓶可乐'

输入 2时,取货口会得到'一瓶矿泉水'

输入 3 时,取货口会得到'一瓶果粒橙'

输入 4时,取货口会得到'一瓶雪碧'

输入其他字符时,返回nothing

【示例】

输入

1

输出

一瓶可乐

# 定义函数语法:def 函数名(参数):
# vending_machine:自动售货机,函数名称
# choice 是参数,记得参数后面有英文冒号
def vending_machine (choice) :
    # 条件判断参数值,并用return 语句返回对应内容
    if choice == '1':
        # return语法:return +变量本身
        return '一瓶可乐!'
    elif choice == '2':
        return '一瓶矿泉水!'
    elif choice == '3':
        return '一瓶果粒橙!'
    elif choice == '4':
        return '一瓶雪碧!'
    else:
        return 'nothing!'

# input函数收集终端信息
choice = input(
    '''欢迎使用自动售货机,输入数字即可购买对应的饮料:\\n
    1.可乐、2.矿泉水、3.果粒橙、4.雪碧\\n你想购买的是:'''
    )

# 打印检查返回结果 
# 函数名(参数)=return后的字符串
# vending_machine(choice)= return后的字符串
print('你购买的是' + vending_machine(choice))

【终端输出】

你购买的是一瓶矿泉水!

vending_machine(choice)调用函数语句。

vending_machine为函数名。

choice是实际参数,是从input函数从终端获取到的值。

这里的调用函数语句在print语句中,和前面的字符串你购买的是进行了拼接。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    6512

    浏览量

    87609
  • 函数
    +关注

    关注

    3

    文章

    3882

    浏览量

    61310
  • Return
    +关注

    关注

    0

    文章

    9

    浏览量

    7520
收藏 人收藏

    评论

    相关推荐

    C语言函数返回值

    当然,C语言程序员中还有一种“行业潜规则”。如果定义的函数是个布尔函数,也即返回值显式的使用类似于 bool 关键字定义,或者函数名类似于 is_true(),那么显然此时应该遵守C语
    发表于 08-31 10:11 1437次阅读

    C语言中函数返回值指向一个指针

    函数返回值类型必须与函数体内的返回表达式的类型相匹配。如果类型不匹配,编译器会报错。此外,C 语言中的函数只能
    的头像 发表于 04-26 11:01 2022次阅读
    C语言中<b class='flag-5'>函数</b>的<b class='flag-5'>返回值</b>指向一个指针

    main函数返回值的认知

    return返回的数值由程序的作者自定。返回不同的可以代表不同的含义,一般是代表出错的原因,传统上返回0代表程序正常结束。main
    发表于 10-24 11:08

    请问怎么定义一个返回值是指向函数的指针

    定义一个返回值是指向函数的指针且有一个指向函数的指针作为参数的函数void*p()a((void*b()))我这么定义对吗?p为返回值a为
    发表于 03-06 04:35

    temp不能得到函数返回值

    main(){u16 temp;.....temp= function(x,y);temp=temp&0xff;......}在此程序中,temp无法得到函数返回值,但是,如果将程序改成
    发表于 03-09 01:27

    请问这两个函数返回值有什么区别?

    如题: 请问:下面这两个函数返回值有什么区别?如果分别连续调用10次该函数返回值分别是多少呢?最好能简单分析一下,谢谢! int GetValue(void) { int f
    发表于 05-12 03:03

    总是提示函数缺少返回值声明

    1; } return 2}return 3}提问:为什么while循环中明明有返回值,可以跳出while循环,而扔提示函数最后缺少返回值
    发表于 10-24 17:27

    关于return返回值的几点疑问?请各位高手给指教

    ;return 2" ,最终函数返回值都会是"return 3" ?2、正常我需要的是return 1。如果只有"
    发表于 10-26 08:06

    关于返回值类型为void的函数返回值

    我对C语言比较熟悉而嵌入式了解不多。今天和一个嵌入式开发讨论C语言的时候遇到一个这样的问题。void f(){}对于一个返回值类型为void的函数我认为这个函数是没有返回值。而那个嵌入
    发表于 05-18 09:34

    Arduino/ESP8266函数返回值导致异常的原因?

    return”中插入,例如: int function(void){ return 0; // 或其他 int } 如果函数不需要返回值
    发表于 05-08 07:36

    浅谈C语言return语句和main 函数返回值

    函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如
    发表于 05-10 10:53 4989次阅读

    main函数的末尾没有return语句会有什么影响

    c语言中,如果main函数的末尾没有return语句将会有什么影响?": 问题的本质 回答这个问题其实只要理解一个东西就行了: 那就是带有返回值函数请务必提供
    的头像 发表于 02-20 15:32 5657次阅读

    C语言程序开发中关于函数返回值的问题

    C语言函数可以通过返回值表示输出结果,例如 log() 函数返回值会根据不同的输入,返回不同的值。再比如,我们定义一个
    发表于 09-06 10:01 764次阅读

    什么是函数返回值

    函数返回值函数被调用后,执行所调用函数内代码后所得出的结果,并且将返回给主函数的值。
    的头像 发表于 04-04 17:21 3557次阅读

    Python函数作为返回值

    函数作为返回值 函数除了作为代码块,作为接收参数,还可以把函数作为结果返回。 例子: 可变参数的求和: 通常 def calc_sum (
    的头像 发表于 09-27 17:01 867次阅读