返回值

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

到目前为止,我们创建的函数都只是为我们做一些事,做完了就结束。但实际上,有时还需要对事情的结果进行获取。这类似于主管向下级职员下达命令,职员去做,最后需要将结果报告给主管。为函数设置返回值的作用就是将函数的处理结果返回给调用它的程序。

在Python中,可以在函数体内使用return语句为函数指定返回值,该返回值可以是任意类型,并且无论return语句出现在函数的什么位置,只要得到执行,就会直接结束函数的执行。

return语句的语法格式如下:

return [value]

参数说明:

value:可选参数,用于指定要返回的值,可以返回一个值,也可返回多个值。

为函数指定返回值后,在调用函数时,可以把它赋给一个变量(如result),用于保存函数的返回结果。如果返回一个值,那么result中保存的就是返回的一个值,该值可以为任意类型。如果返回多个值,那么result中保存的是一个元组。

说明:当函数中没有return语句时,或者省略了return语句的参数时,将返回None,即返回空值。

场景模拟:某商场年中促销,优惠如下:

l 满500可享受9折优惠

l 满1000可享受8折优惠

l 满2000可享受7折优惠

l 满3000可享受6折优惠

根据以上商场促销活动,计算优惠后的实付金额。

实例04 模拟结账功能―计算实付金额

在IDLE中创建一个名称为checkout.py的文件,然后在该文件中定义一个名称为fun_checkout的函数,该函数包括一个列表类型的参数,用于保存输入的金额,在该函数中计算合计金额和相应的折扣,并将计算结果返回,最后在函数体外通过循环输入多个金额保存到列表中,并且将该列表作为fun_checkout()函数的参数调用,代码如下:

def fun_checkout(money):

'''功能:计算商品合计金额并进行折扣处理

money:保存商品金额的列表

返回商品的合计金额和折扣后的金额

'''

money_old = sum(money) # 计算合计金额

money_new = money_old

if 500 <= money_old < 1000: # 满500可享受9折优惠

money_new = '{:.2f}'.format(money_old * 0.9)

elif 1000 <= money_old <= 2000: # 满1000可享受8折优惠

money_new = '{:.2f}'.format(money_old * 0.8)

elif 2000 <= money_old <= 3000: # 满2000可享受7折优惠

money_new = '{:.2f}'.format(money_old * 0.7)

elif money_old >= 3000: # 满3000可享受6折优惠

money_new = '{:.2f}'.format(money_old * 0.6)

return money_old, money_new # 返回总金额和折扣后的金额

*****************************调用函数***********************************

print("\n开始结算......\n")

list_money = [] # 定义保存商品金额的列表

while True:

请不要输入非法的金额,否则将抛出异常

inmoney = float(input("输入商品金额(输入0表示输入完毕):"))

if int(inmoney) == 0:

break # 退出循环

else:

list_money.append(inmoney) # 将金额添加到金额列表中

money = fun_checkout(list_money) # 调用函数

print("合计金额:", money[0], "应付金额:", money[1]) # 显示应付金额

运行结果如图13所示。

图13 模拟顾客结账功能

相关推荐
浒畔居7 分钟前
机器学习模型部署:将模型转化为Web API
jvm·数据库·python
抠头专注python环境配置10 分钟前
基于Pytorch ResNet50 的珍稀野生动物识别系统(Python源码 + PyQt5 + 数据集)
pytorch·python
百***787510 分钟前
Kimi K2.5开源模型实战指南:核心能力拆解+一步API接入(Python版,避坑全覆盖)
python·microsoft·开源
喵手12 分钟前
Python爬虫实战:针对天文历法网站(以 TimeandDate 或类似的静态历法页为例),构建高精度二十四节气天文数据采集器(附xlsx导出)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集天文历法网站数据·构建二十四节气天文数据
一个响当当的名号28 分钟前
lectrue9 索引并发控制
java·开发语言·数据库
进阶小白猿32 分钟前
Java技术八股学习Day30
java·开发语言·学习
liu****32 分钟前
4.Qt窗口开发全解析:菜单栏、工具栏、状态栏及对话框实战
数据库·c++·qt·系统架构
zhaotiannuo_199834 分钟前
Python之2.7.9-3.9.1-3.14.2共存
开发语言·python
Keep_Trying_Go39 分钟前
基于GAN的文生图算法详解ControlGAN(Controllable Text-to-Image Generation)
人工智能·python·深度学习·神经网络·机器学习·生成对抗网络·文生图
三水不滴44 分钟前
Redis缓存更新策略
数据库·经验分享·redis·笔记·后端·缓存