【目的】定义和调用函数及函数的参数、变量的作用域、匿名函数等
实例01:输出每日一贴(共享版)
def function_tips(): '''功能:每日输出一条励志文字 ''' import datetime mot = ["今天星期一:\n坚持下去不是因为我很坚强,而是因为我别无选择", "今天星期二:\n含泪播种的人一定能笑着收货", "今天星期三:\n作对的事情比把事情作对重要", "今天星期四:\n命运给予我们的不是失望之酒,而是机会之杯", "今天星期五:\n不要等到明天,明天太遥远,今天就行动", "今天星期六:\n求知若渴,虚心若愚", "今天星期日:\n成功将属于那些从不说“不可能”的人"] day = datetime.datetime.now().weekday() print(mot[day]) function_tips()
输出结果如下
实例02:根据身高、体重计算BMI指数(共享版)
def fun_bmi(person,height,weight): '''功能:根据身高和体重计算BMI指数 person:姓名 height:身高(米) weight:体重(千克) ''' print(person + "的身高:" + str(height) + "米\t 体重:" + str(weight) + "千克") bmi=weight/(height*height) print(person +"的BMI指数为:"+str(bmi)) #判断身材是否合理 if bmi<18.5 : print("你的体重过轻") if bmi>=18.5 and bmi<24.9: print("正常范围,注意保持") if bmi>=24.9 and bmi<29.9 : print("你的体重过重") if bmi>=29.9 : print("肥胖") fun_bmi("路人甲",1.83,60) fun_bmi("路人乙",1.60,50)
输出结果如下:
实例03:根据身高、体重计算BMI指数(共享升级版)
def fun_upgrade(*person): '''功能:根据身高和体重计算BMI指数(共享升级版) *person:可变参数该参数中需要传递带3个元素的列表 分别为姓名\身高(单位:米)和体重(单位:千克) ''' for list_person in person: for item in list_person: person = item[0] height = item[1] weight = item[2] print("\n" + "="*13,person,"="*13) print( "的身高:" + str(height) + "米\t 体重:" + str(weight) + "千克") bmi=weight/(height*height) print("的BMI指数为:"+str(bmi)) #判断身材是否合理 if bmi<18.5 : print("你的体重过轻") if bmi>=18.5 and bmi<24.9: print("正常范围,注意保持") if bmi>=24.9 and bmi<29.9 : print("你的体重过重") if bmi>=29.9 : print("肥胖") list_w = [('绮梦',1.70,65),('零语',1.78,50),('黛兰',1.72,66)] list_m = [('梓轩',1.80,75),('冷依一',1.75,70)] fun_upgrade(list_w,list_m)
运行结果如下:
实例04:模拟结账功能——计算实付金额
def fun_checkout(money): '''功能:计算商品合计金额并进行折扣处理 money:保存商品金额的列表 返回商品的合计金额和折扣后的金额 ''' money_old = sum(money) money_new = money_old if 500 <= money_old < 1000: money_new = '{:.2f}'.format(money_old*0.9) elif 1000 <=money_old <2000: money_new = '{:.2f}'.format(money_old*0.8) elif 2000 <= money_old <3000: money_new = '{:.2f}'.format(money_old*0.7) elif money_old >=3000: money_new = '{:.2f}'.format(money_old*0.6) return money_old,money_new print("\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])
运行结果如下:
实例05:一棵松树的梦
pinetree = '我是一颗松树' def fun_christmastree(): '''功能:一个梦 无返回值 ''' pinetree = '挂上彩灯、礼物……我变成一颗圣诞树@^.^@\n' print(pinetree) print('\n下雪了……\n') print('============开始做梦==========\n') fun_christmastree() print('==============梦醒了===========\n') pinetree = '我身上落满雪花,'+ pinetree+'-_-' print(pinetree)
运行结果如下:
实例06:应用lambda实现对爬取到的秒杀商品信息进行排序
bookinfo = [('不一样的卡梅拉(全套)',22.50,120),('零基础学Android',65.10,89.80),('摆渡人',23.40,36.00),('福尔摩斯探索全集8册',22.50,128)] print('爬虫到的商品信息:\n',bookinfo,'\n') bookinfo.sort(key = lambda x:(x[1],x[1]/x[2])) print('排序后的商品信息:\n',bookinfo)
运行结果如下:
实战1:导演为剧本选主角
def act(actor): print(actor+"开始参演这个剧本") A=input("导演选定的主角是:") act(A)
运行结果如下:
实战2:模拟美团外卖商家的套餐
def taocan(a,b,c,d,e,f): print("米线店套餐如下:1."+ a +'2.'+ b+'3.'+c+'4.'+d+'5.'+e+'6.'+f) print(a+b) print(c+d) print(e+f) taocan('考神套餐','13元','单人套餐','9.9元','情侣套餐','20元')
实战3:根据生日判断星座
m=("摩羯座","水瓶座","双鱼座","白羊座","金牛座","双子座","巨蟹座","狮子座","处女座","天秤座","天蝎座","射手座","摩羯座") d=(20,19,21,20,21,22,23,23,23,24,23,22) def xingzuo(month,day): if day<d[month-1]: return m[month-1] else: return m[month] M=int(input("请输入月份:(例如:5)")) D=int(input("请输入日期:(例如:17)")) print(str(M)+'月'+str(D)+'日星座为'+xingzuo(M,D))
运行结果如下:
实战4:将美元转换为人民币
def change(dollar): RMB = dollar*6.28 return RMB dollar = float(input("请输入要转换的美元金额:")) print("转换后人民币金额是:",change(dollar))
运行结果如下:
标签:函数,money,bmi,list,height,person,print From: https://www.cnblogs.com/psl-12/p/16805867.html