龙空技术网

Python实战案例01

惊鸿若梦一书生 255

前言:

当前你们对“python行为树”大体比较关注,同学们都需要剖析一些“python行为树”的相关文章。那么小编在网上收集了一些关于“python行为树””的相关文章,希望看官们能喜欢,姐妹们快快来学习一下吧!

1、打印购物小票

购物小票又称购物收据,是指消费者购买商品时由商场或其它商业机构给用户留存的销售凭据。购物小票中一般会包含用户购买的商品名称、数量、单价以及总金额等信息。本实例要求编写代码,实现打印购物小票的功能。

# 打印购物小票

print("单号: DH20140923001")

print("时间:2014-09-23 08:56:14")

print(".................................")

print("名称 数量 单价 金额")

print("金士顿U盘8G 1 40.00 40.00 ")

print("胜创16GTF卡 1 50.00 50.00 ")

print("读卡器 1 8.00 8.00 ")

print("网线2米 1 5.00 5.00 ")

print(".................................")

print("总数:4 总额:103.00")

print("折后总额:103.00")

print("实收:103.00 找零:0.00")

print("收银:管理员")

2、打印蚂蚁森林植树证书

蚂蚁森林是支付宝客户端发起“碳账户”的一款公益活动:用户通过步行、地铁出行、在线消费等行为,可在蚂蚁森林中获取能量,当能量到达一定数值后,用户可以在支付宝中申请一颗虚拟的树,申请成功后会收到支付宝发放的一张植树证书。植树证书中包含申请日期、树苗编号等信息。本实例要求编写代码,实现打印植树证书信息的功能。

print(" 植树证书1 ")

print(" 谢谢你 ")

print("你于2019年11月3日申请种植的梭梭树,\n"

"已被中国扶贫基金会认领,将种植到武威\n"

"地区。")

print(" 树苗编号 ")

print(" NO.HFK20308960305 ")

3、绝对温标

绝对温标又称开氏温标、热力学温标,是热力学和统计物理中的重要参数之一,也是国际单位制七个基本物理量之一。绝对温标的单位为开尔文(简称开,符号为 K),绝对温标的零度对应我们日常使用的摄氏温度(单位为摄氏度,简称度,符号为 ℃)的 273.15℃。

本实例要求编写代码,实现将用户输入的摄氏温度转换为移绝对温标标识的开氏温度的功能。

# 绝对温度 = 摄氏温度 + 273.15

# T(K)=t(℃)+273.15

celsius = float(input("请输入摄氏温度:"))

kelvin = celsius + 273.15

print(celsius, "℃对应的开尔文为:", kelvin)

4、身体质量指标

BMI 指数即身体健康指数,它与人的体重和身高相关,是目前国际常用的衡量人体胖瘦程度以及是否健康的一个标准。已知 BMI 值的计算公式如下:

体质指数(BMI)= 体重(kg)÷ 身高^2(m)

本实例要求编写代码,实现根据用户输入的身高体重计算 BMI 指数的功能。

height = float(input('请输入您的身高(m):'))

weight = float(input('请输入您的体重(kg):'))

BMI = weight / (height ** 2)

print('您的BMI值为:', BMI)

5、计算器

计算器极大地提高了人们进行数字计算的效率与准确性,无论是超市的收银台,还是集市的小摊位,都能够看到计算器的身影。计算器最基本的功能是四则运算。

本实例要求编写代码,实现计算器的四则运算功能。

# 计算器可以进行基础运算(加、减、乘、除)被除数不为0

first = float(input("请输入第一个数:"))

second = float(input("请输入第二个数:"))

operator = input("请选择运算符:+ - * /:")

if operator == '+':

print(first + second)

elif operator == '-':

print(first - second)

elif operator == '*':

print(first * second)

elif operator == '/':

if second == 0:

print("除数不能为0")

else:

print(first / second)

6、猜数字

猜数字由两个人参与,一个人设置一个数字,一个人猜数字,当猜数字的人说出一个数字,由出数字的人告知是否猜中:若猜测的数字大于设置的数字,出数字的人提示“很遗憾,你猜大了”;若猜测的数字小于设置的数字时,出数字的人提示“很遗憾,你猜小了”;若猜数字的人在规定的次数内猜中设置的数字,出数字的人提示“恭喜,猜数成功”。

本实例要求编写代码,实现遵循上述规则的猜数字程序

guess_num = input("请设定要猜的数字:\n")

for frequency in range(1,6):

number = input("请输入第"+str(frequency)+"次猜测的数字:")

if number.isdigit() is False:

print('请输入一个正确的数字')

elif int(number) < 0 or int(number) > 100:

print("请输入1-100范围的数字")

elif int(guess_num) == int(number):

print("恭喜你用了%d次猜对了" % frequency)

break

elif int(guess_num) > int(number):

print("很遗憾,你猜小了")

else:

print("很遗憾,你猜大了")

if frequency == 5:

print("很遗憾,%d次机会已用尽,游戏结束,答案为%d" %

(frequency, int(guess_num)))

7、逢 7 拍手游戏

逢 7 拍手游戏的规则是:从 1 开始顺序数数,数到有 7 或者包含 7 的倍数的时候拍手。

本实例要求编写代码,模拟实现逢七拍手游戏,实现输出 100 以内需要拍手的数字的程序。

for i in range(1, 101):

# 判断条件:既不包含7,也不是7的倍数

if "7" in str(i) or int(i) % 7 == 0:

# 输出,去掉了换行符

print('*', end="、")

# 如果包含7 输出*

elif "7" not in str(i)and int(i) % 7 != 0 :

print(i, end='、')

8、打印五子棋棋盘

五子棋是一种由双人对弈的纯策略型棋类游戏,它使用的棋盘一般由横纵等距的各15条平行线构成,这些线垂直交叉形成的225个交叉点为对弈双方的落子点。

本实例要求编写代码,实现按用户要求打印指定大小的五子棋棋盘的程序。

size = int(input("请输入棋盘的大小:"))

for i in range(size):

for j in range(size):

if i == 0 and j == 0:

print("┏",end='')

elif i == 0 and j == size - 1:

print("┓",end='')

elif i == size - 1 and j == 0:

print("┗",end='')

elif i == size - 1 and j == size - 1:

print("┛",end='')

elif j == 0:

print("┠",end='')

elif i == size - 1:

print("┷",end='')

elif j == size - 1:

print("┨",end='')

elif i == 0:

print("┯",end='')

else:

print("┼",end='')

print('')

9、房贷计算器

房贷计算公式如下:

每月月供参考 = 贷款金额 × [月利率 × (1 + 月利率) ^ 还款月数] ÷ { [(1 +月利率) ^ 还款月数] - 1}

还款总额 = 每月月供参考 × 期限 × 12

支付利息 = 还款总额 - 贷款金额 × 10000

以上计算方式中月利率(月利率=利率 ÷12)指以月为计息周期计算的利息。不同贷款类型的利率是不同的:对于商业贷款而言,五年以下(含五年)的贷款利率是 4.75%,五年以上的贷款利率是 4.90%;对于公积金贷款利率而言,五年以下(含五年)的贷款利率是 2.75%,五年以上的利率是 3.25%。

本案例要求编写程序,根据以上计算方式开发一个房贷计算器。

# 等额本息(均使用基准利率)

# 组合贷可作为课后习题

# 商业贷款利率:4.9%

# 公积金利率:3.25%

# 每月还款额=贷款本金×[月利率×(1+月利率) ^ 还款月数]÷{[(1+月利率) ^ 还款月数]-1}

while True:

loan_type = input("请选择贷款类型:1.商业贷款 2.公积金贷款 3.组合贷款\n")

# 贷款金额

if loan_type != '3':

loan_amount = float(input("请输入贷款金额(万)\n"))

term = int(input("请选择期限(年):5、10、15、20、25\n"))

if term in [5,10,15,20,25]:

if term==5:

mon_rate = (4.75 / 100) / 12 # 计算月利率

# 计算每月应还金额

mon_pay = loan_amount * 10000 * (mon_rate * ((1 + mon_rate) ** (term * 12))) / (

((1 + mon_rate) ** (term * 12)) - 1)

# 计算还款总额

all_pay = mon_pay * term * 12

# 计算支付利息

interest = all_pay - loan_amount * 10000

print("每月月供参考(元):{:.2f}元".format(mon_pay))

print("支付利息(元):{:.2f}元".format(interest))

print("还款总额(元):{:.2f}元".format(all_pay))

else:

# 商业贷款

if loan_type == '1': # 商业贷款

mon_rate = (4.90 / 100) / 12 # 计算月利率

# 计算每月应还金额

mon_pay = loan_amount * 10000 * (mon_rate * ((1 + mon_rate) ** (term * 12))) / (

((1 + mon_rate) ** (term * 12)) - 1)

# 计算还款总额

all_pay = mon_pay * term * 12

# 计算支付利息

interest = all_pay - loan_amount * 10000

print("每月月供参考(元):{:.2f}元".format(mon_pay))

print("支付利息(元):{:.2f}元".format(interest))

print("还款总额(元):{:.2f}元".format(all_pay))

elif loan_type == '2': # 公积金贷款

if term==5:

mon_rate = (2.75 / 100) / 12 # 计算月利率

else:

mon_rate = (3.25 / 100) / 12 # 计算月利率

# 计算每月应还金额

mon_pay = loan_amount * 10000 * (mon_rate * ((1 + mon_rate) ** (term * 12))) / (

((1 + mon_rate) ** (term * 12)) - 1)

# 计算还款总额

all_pay = mon_pay * term * 12

# 计算支付利息

interest = all_pay - loan_amount * 10000

print("每月月供参考(元):{:.2f}元".format(mon_pay))

print("支付利息(元):{:.2f}元".format(interest))

print("还款总额(元):{:.2f}元".format(all_pay))

else:

print('请输入合法的期限')

else:

# 商贷金额

business_loan = float(input("请输入商业贷款金额(万):\n"))

# 公积金贷款

fund_loan = float(input("请输入公积金贷款金额(万):\n"))

term = int(input("请选择期限(年):5、10、15、20、25\n"))

if term in [5, 10, 15, 20, 25]:

if term ==5:

business_mon_rate = (4.75 / 100) / 12 # 商贷月利率

found_mon_rate = (2.75 / 100) / 12 # 公积金月利率

else:

business_mon_rate = (4.90 / 100) / 12 # 商贷月利率

found_mon_rate = (3.25 / 100) / 12 # 公积金月利率

# 计算商业贷款 每月应还金额

business_mon_pay = business_loan * 10000 * (business_mon_rate * ((1 + business_mon_rate) ** (term * 12))) / (

((1 + business_mon_rate) ** (term * 12)) - 1)

# 计算公积金贷款 每月应还金额

found_mon_pay = fund_loan * 10000 * (found_mon_rate * ((1 + found_mon_rate) ** (term * 12))) / (

((1 + found_mon_rate) ** (term * 12)) - 1)

# 每月总应还

mon_all_pay = business_mon_pay + found_mon_pay

all_pay = mon_all_pay * term * 12

# 计算支付利息

interest = all_pay - (business_loan + fund_loan)*10000

print("每月月供参考(元):{:.2f}元".format(mon_all_pay))

print("支付利息(元):{:.2f}元".format(interest))

print("还款总额(元):{:.2f}元".format(all_pay))

else:

print('请输入合法的期限')

标签: #python行为树