57.return—函数的返回值

news2024/10/6 6:47:40

57.return-函数的返回值

文章目录

  • 57.return-函数的返回值
    • 1.定义
    • 2.分类
    • 3. 没有返回值
    • 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'>

<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'>

<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语句中,和前面的字符串你购买的是进行了拼接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/125740.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Chronicle Pro - 一款简单 Mac 理财规划师,管理你的的个人预算

Chronicle Pro - 一款简单 Mac 理财规划师&#xff0c;管理你的的个人预算 使用Chronicle追踪和支付账单&#xff0c;管理你的个人预算&#xff0c;这是一款简单的Mac理财规划师。获得通知&#xff0c;这样你就不会错过下一个付款截止日期;你再也不用付滞纳金了。把你所有的账单…

8 GUI实例

GUI 1 Frame 用来创建窗口&#xff0c;构造函数如下&#xff1a; public Frame() throws HeadlessExceptionpublic Frame(String title) throws HeadlessException 常用方法如下&#xff1a; public class gui_v1 {public static void main(String[] args) {Frame f new F…

用python的turtle库画一个小猪佩奇

小猪佩奇是一个可爱的小猪。她已经四岁了&#xff0c;与她的妈妈&#xff0c;爸爸&#xff0c;和弟弟乔治生活在一起。佩奇最喜欢做的事情是玩游戏&#xff0c;打扮的漂亮&#xff0c;度假&#xff0c;以及在小泥坑里快乐的跳上跳下和与小羊苏西&#xff08;她最好的朋友&#…

Nginx小结1

Nginx 是一个高性能的HTTP和反向代理web服务器&#xff0c;作为负载均衡器&#xff0c;承接的所有请求。核心功能有负载均衡、反向代理、静态资源服务器。另外Nginx还可以使用keepalive结合使用建立主备份机实现高可用。keepalive是在TCP中一个可以检测死连接的机制&#xff0c…

WordPress插件开发教程1:开发第一个WordPress插件

第一步&#xff1a;在 wp-content \ plugins 目录新建一个目录&#xff0c;随便起个名字&#xff0c;比如&#xff1a;my-first-plugin。 第二步&#xff1a;进入 my-first-plugin 目录&#xff0c;新建一个PHP文件&#xff0c;随便起个名字&#xff0c;比如&#xff1a;hello.…

UE解决SetActorHiddenInGame后其Collision仍然会被检测到的问题

文章目录 1.问题产生2.解决过程3.总结4.参考资料1.问题产生 (1)首先我在场景内添加了红色的球(Sphere)和绿色的面片(Plane),两者都是StaticMeshActor,如下图所示: (2)然后进入二者的静态网格体编辑窗口,将二者的碰撞复杂度都设置为UseComplexCollisionAsSimple。 …

D. Valiant‘s New Map(二分)

Problem - D - Codeforces 游戏工作室 "DbZ Games "想在他们的热门游戏 "Valiant "中引入另一张地图。这一次&#xff0c;名为 "Panvel "的地图将以孟买市为基础。 孟买可以被表示为nm的单元格。网格中的每个单元格&#xff08;i,j&#xff09;…

【数据可视化】地理信息可视化的常见算法

1. 地图投影 地理坐标&#xff1a;是用维度、经度表示地面点位置的球面坐标 移动开发&#xff1a;移动端依靠GPS获取位置信息&#xff0c;其获得的是经纬度的信息&#xff08;WGS84&#xff09; 互联网开发中&#xff0c;需要将WGS84转换为其他互联网地图平台支持的坐标系统…

QT 九宫格绘图(QSS方式)

什么是九宫格方式绘图&#xff1f; 顾名思义&#xff0c;就是把一个方块分割成 9 个部分&#xff0c;如图所示&#xff1a; 九宫格绘图的原理就是把背景图分割成 9 个部分&#xff0c;绘制时&#xff1a; 四个角&#xff08;1、3、7、9&#xff09;的大小不变左右部分&#…

C++11标准模板(STL)- 算法(std::partial_sum)

定义于头文件 <numeric> 算法库提供大量用途的函数&#xff08;例如查找、排序、计数、操作&#xff09;&#xff0c;它们在元素范围上操作。注意范围定义为 [first, last) &#xff0c;其中 last 指代要查询或修改的最后元素的后一个元素。 计算范围内元素的部分和 s…

达达盈利新故事,得靠智能化“省”出来?

&#xff08;图片来源于网络&#xff0c;侵删&#xff09; 文|螳螂观察 作者|叶小安 我们正处于一个最好的时代&#xff0c;不用出门就能享受到叫餐、代买衣物服饰、收发快递甚至是医院排队等服务&#xff0c;“万物皆可到家、万物即到”&#xff0c;正成为时代的潮流。 不…

【信管5.4】进度管理知识点汇总

进度管理知识点汇总在项目进度管理这一块&#xff0c;我们突然一下就接触到了不少的计算操作&#xff0c;而且接触到的工具概念也相比范围管理来说多了很多。因此&#xff0c;我们在这里进行一次小的总结。活动顺序与逻辑关系还记得什么是活动吧&#xff1f;活动就是 WBS 再次分…

NFS And Autofs

NFS&#xff08;network file system&#xff09; 挂载NFS 文件系统。NFS是一个标准的网络协议用在linux与unix之间,版本7默认使用的是NFSV4&#xff0c;NFSv4使用TCP协议&#xff0c;旧版本的NFS使用TCP或者UDP协议。 *手动挂载NFS使用mount. *自动挂载使用/etc/fstab *挂载NF…

FFmpeg常用推流命令

一、FFmpeg推RTMP流准备工作 首先确保自已已经安装了nginx rtmp服务器。 打开配置文件nginx.conf 完成如下配置 如果没有nginx rtmp服务器&#xff0c;请阅读这一篇简书文章 Mac搭建nginxrtmp服务器 二、FFmpeg推流 1.推流MP4文件 视频文件地址&#xff1a;/Users/xu/Desk…

美创DSM数据安全管理平台获华为鲲鹏技术认证!

近期&#xff0c;美创DSM数据安全管理平台通过华为鲲鹏的相互兼容性测试与认证&#xff0c;这标志着数据安全管理平台对国产信创服务器的支持&#xff0c;实现自研、国产化和自主可控。 华为鲲鹏技术认证是华为推出的一项生态合作伙伴计划&#xff0c;要求测试产品自主、可控…

健康体检管理系统源码 运营级PEIS系统源码 PEIS健康体检系统源码 PEIS源码 B/S架构开发

开发语言:ASP.NET C#,数据库:SQLserver2008R2&#xff0c;开发工具:VS2010。 前台工作&#xff1a; 预约、前台登记、照片采集、导检单打印、检验申请单打印、检前签到、检后签到、 团体设置、合并团体&#xff08;逻辑&#xff09; 医生工作&#xff1a; 数据集中录入、数…

国产linux系统使用 PageOffice 在线打开 word 文件

一、客户端环境 1、操作系统 银河麒麟&#xff0c;中标麒麟&#xff0c;统信UOS 2、芯片 芯片&#xff08;CPU)&#xff1a;x86&#xff08;Intel、兆芯&#xff09; &#xff0c;ARM&#xff08;飞腾、鲲鹏&#xff09;&#xff0c;龙芯 3、浏览器 360安全浏览器 奇安信…

NNOM神经网络语音降噪

目录 1. 问题记录和解决 2. C工程建立和运行 1. 问题记录和解决 &#xff08;1&#xff09;python语音处理依赖库soundfile 在miniconda的powershell中执行指令&#xff1a; pip install soundfile –i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com &a…

js函数篇

函数声明提升 面试题&#xff1a;先提升函数&#xff0c;再声明变量提升 arguments function fun(){var sum0;for(var i0;i<arguments.length;i){sumarguments[i];}console.log(所有参数的和是sum); } fun(33,44,23,34); 函数算法面试题 1.喇叭花数 abc a! b! c! fun…

使用WxJava快速接入微信公众号

在微信公众号请求用户网页授权之前&#xff0c;开发者需要先到公众平台官网中的“开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中&#xff0c;修改授权回调域名。 环境准备 1.申请公众号测试账号2.外网服务准备以及配置3.常用开发工具及网站…