第一阶段 Python初体验
实验一 欢迎进入Python世界--Hello world
第1关:Hello Python,我来了!
任务描述
Python 编程语言具有简洁、易读等特点,并提供了交互式编程以及脚本编程两种不同的模式,学习者很容易上手。 本关的任务是: (1)完成打印Hello world
、整数加减法以及利用Help
命令查询相应内置函数的使用等; (2)利用 Python 提供的print()
内置函数打印输出Hello world
。
# coding=utf-8
# 请在此处添加代码完成输出“Hello Python”,注意要区分大小写!
########## Begin ##########
print('Hello Python')
########## End ##########
实验二 python初探
第1关:基本输入输出
任务描述
本关任务:编写一个程序,依次输入用户的学号,姓名和手机号码 再依次输出相关信息。为了完成本关任务,你需要掌握: 1.如何输入数据 2.如何输出
x = input("请输入学号")
y = input("请输入姓名")
h = input("请输入电话")
print("学号"+" "+x)
print("姓名"+" "+y)
print("电话"+" "+h)
第2关:计算长方形的周长和面积
任务描述
本关任务:输入长方形的长和宽,计算并输出长方形的周长和面积。
相关知识
为了完成本关任务,你需要掌握: 1.如何将字符数据转换为数值 2.赋值语句
c=eval(input('请输入长'))
k=eval(input('请输入宽'))
circle=2*int(c)+2*int(k)
area=int(c)*int(k)
#代码结束
print('长方形的周长是',circle)
print('长方形的面积是',area)
第3关:基本的原油金额计算
任务描述
本关任务: 石油桶数是常见的原油数量单位。 欧佩克组织和英美等西方国家原油数量单位通常用桶来表示,中国及俄罗斯等国则常用吨作为原油数量单位。 吨和桶之间的换算关系是:1桶(bbl)=0.14吨(t) 编写程序输入原油的价格和带有单位的数量,计算并显示其需要的美元金额。输入时价格以美元/桶为单位,数量可以以桶或吨为单位,10bbl表示10桶,2t表示2吨。
#油气产量换算程序
jg=input("请输入原油价格")
sy=input("请输入原油数量")
#代码开始
if sy[-3:]=="bbl":
print("{:.2f}".format(int(jg)*int(sy[:-3])))
elif sy[-1]=="t":
t=float(sy[:-1])/0.14
print("{:.2f}".format(eval(jg)*t))
else:
print("输入格式错误")
第4关:循环原油金额换算
任务描述
本关任务:编写一个循环实现原油金额计算的程序。用户输入原油价格和带有单位的数量,计算并显示金额。用户可连续输入带有单位的字符,直到用户输入n或N。
相关知识
为了完成本关任务,你需要掌握: 如何执行循环语句
jg= eval(input("请输入原油价格"))
sy = input("请输入原油数量")
#代码开始
while sy != 'N' and sy != 'n':
if sy[-1] == 't':
print("{:.2f}".format(eval(sy[:-1])/0.14*jg))
elif sy[-3:] == "bbl":
print("{:.2f}".format(eval(sy[:-3])*jg))
else:
print("输入格式错误")
sy = input("请输入原油数量")
#代码结束
第5关:BMI指数判断
任务描述
BMI指数(身体质量指数,简称体质指数又称体重指数,英文为Body Mass Index,简称BMI),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。 bmi小于18.5,为体重过低;bmi18.5-24(包含24),为体重正常;bmi为24-28(包含28),为体重超重;bmi超过28,为体重肥胖。
输入身高和体重,显示其分类
sg=eval(input("身高"))
tz=eval(input("体重"))
#代码开始
bmi=tz/(sg*sg)
if bmi<18.5:
print("体重过低")
elif 18.5<bmi<=24:
print("体重正常")
elif 24<bmi<=28:
print("体重超重")
else:
print("体重肥胖")
#代码结束
第6关:黄金价值计算
任务描述
编写程序,输入黄金价格(美元/盎司),美元兑人民币的汇率,黄金的数量(以克为单位),计算并输出黄金的人民币价值。(1盎司(oz) =31.1034768 克)。
jg=eval(input("黄金价格"))
hl=eval(input("美元汇率"))
zl=eval(input("黄金重量"))
#代码开始
jz=jg*zl*h1/31.1034768
#代码结束
print("黄金价值{:.2f}".format(jz))
第7关:股票代码判断
任务描述
证券代码采用6位数字编码,编码规则定义如下:
编写程序,根据用户输入的6位股票编码判断其所属的版块。若代码不符合以上规则,显示错误编码。要求能循环输入判断,直到用户输入000000为止。
dm=input("股票代码")
###代码开始
while(dm!="000000"):
if dm[:2]=="60":
print('沪市A股')
elif dm[:3]=='688':
print('科创板')
elif dm[:3]=='000':
print('深市A股')
elif dm[:3]=='002':
print('中小板')
elif dm[:3]=='300':
print('创业板')
else:
print("错误编码")
dm=input("股票代码")
###代码结束
第8关:计算物业费
任务描述
某物业公司收取物业费的标准如下:楼梯房每月每平米0.8元,电梯房每月每平米1.8元,商业门面每月每平米3元。 若一次性缴纳12个月及以上,给予95折优惠。 编写程序,输入房屋类型(1代表楼梯房,2代表电梯房,3代表商业门面)和房屋面积、缴纳月数,计算客户应该缴纳的物业费。
x=eval(input("类型")
s=eval(input("面积"))
m=eval(input("月数"))
#代码开始
while True:
while x==1:
if m<12:
f=(0.8)*s*m
print("物业费{:.2f}".format(f))
else:
f=0.8*s*0.95*m
print("物业费{:.2f}".format(f))
break
while x==2:
if m<12:
f=1.8*s*m
print("物业费{:.2f}".format(f))
else:
f=1.8*s*0.95*m
print("物业费{:.2f}".format(f))
break
while x==3:
if m<12:
f=1.8*s*m
print("物业费{:.2f}".format(f))
else:
f=3*s*0.95*m
print("物业费{:.2f}"format(f))
break
break
第二阶段 数据类型
实验一 数字类型及其操作
第1关:计算普通年金终值
任务描述
本关任务:编写一个计算普通年金终值的小程序。 普通年金终值是指最后一次支付时的本利和,它是每次支付的复利终值之和。按复利换算到最后一期期末的终值,然后加总,就是该年金终值。
#计算普通年金终值
A=eval(input("请输入每年本金"))
i=eval(input("请输入利率"))
n=eval(input("请输入年限"))
#代码开始
F=(((1+i)**n-1)/i)*A
#代码结束
print("普通年金终值是{:.2f}".format(F))
第2关:计算三角形的周长和面积
任务描述
本关任务:编写一个计算三角形的周长和面积的小程序。
相关知识
为了完成本关任务,你需要掌握:海伦公式
海伦公式
海伦公式是利用三角形的三条边的边长直接求三角形面积的公式。 假设在平面内,有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:
a=eval(input(""))
b=eval(input(""))
c=eval(input(""))
#代码开始
Z=a+b+C
p=Z/2
S=(p*(p-a)*(p-b)*(p-c))**0.5
print('三角形周长%.2f三角形面积%.2f'%(z,S))
#代码结束
第3关:计算四边形的周长和面积
任务描述
本关任务:编写一个能计算四边形的周长和面积的小程序。 输入四边形的四条边长和一对对角之和(角度值),计算其周长和面积。 四边形四个边的长度为 a,b,c,d,一对对角之和为 m,x是周长的一半, 其面积为
相关知识
为了完成本关任务,你需要掌握:如何使用math库的函数
from math import
a=eval(input("请输入边长一"))
b=eval(input("请输入边长二"))
c=eval(input("请输入边长三"))
d=eval(input("请输入边长四"))
m=eval(input("请输入对角之和"))
#代码开始
z=a+b+c+d
x=z/2
s=((x-a)*(x-b)*(x-c)**c*d*(cos(radians(m/2)))**2)**0.5
#代码结束
print("四边形周长{:.2f}面积{:.2f}".format(z,s))
第4关:水仙花数
任务描述
本关任务:编写一个程序,显示所有的水仙花数 水仙花数是一个三位数,其百位、十位、个位的数字的立方之和为其数本身。 例如 153的各数立方之和为1+125+27=153
相关知识
为了完成本关任务,你需要掌握:1.如何循环,2.如何获取三位数的各位数字。
#代码开始
for i in range(100,999,1):
a=i//100
b=i//10%10
c=i%10
if a**3+b**3+c**3==i:
print(i)
#代码结束
第5关:计算投资收益
任务描述
本关任务:编写一个能计算投资收益的程序。 某客户有本金 500000 元,有两个投资方案。 一是某银行大额存单,三年期的存款年利息是 每年4%, 该客户存款到期后将利息和本金再存入。 二是购买公寓出租,每月租金 1000 元,该客户每年年底将租金采取一年期定期存款的形式,年利率为 1.75% 计算30年中每三年该客户两种投资方案的投资收益。
相关知识
为了完成本关任务,你需要掌握:for循环语句
#代码开始
ental income =0
desposite interest=500000
for i in range(1,31):
rental income=1000*12 + rental income*(1+0.0175)
if i%3==0:
desposite interest=desposite interest+desposite interest*0.04*3
print('第{:2}年公寓方案{:.2f}大额存单投资收益{:.2f}'.format(i,rental income,desposite interest-500000))
#代码结束
第6关:采用年度总和法计算固定资产折旧
任务描述
本关任务:编写一个使用年度总和法计算固定资产折旧的小程序。 某企业有一项固定资产。该项固定资产原始价值x元,预计使用年限为n年,预计净残值为y元 输入x,n,y,要求计算采用年数总和法计提各年的折旧额
相关知识
为了完成本关任务,你需要掌握:1.固定资产折旧的方法2.for循环
#年度息和法固定资产折旧
x=eval(input("固定资产原始价值"))
y=eval(input("预计净残值"))
n=eval(input("使用年限"))
i=0
b=x
for s in range(1,n+1):
i=i+s
if s==n:
for h in range(1,n+1):
z=(x-y)*((n+1-h)/i)
b=b-z
print('第{:1}年折旧额{:.2f}剩余价值{:.2f}'.format(h,z,b))
#代码结束
第7关:无收益资产远期合约价值
任务描述
无收益资产是指在远期到期前,不产生现金流的资产,如贴现债券。 无收益资产远期合约价值等于资产现货价格与交割价格现值的差额,如下图所示。
S为资产现货价格,K为远期合约的交割价格,r为无风险年利率,T为远期合约的到货时间,t是现在的时间,T-t代表远期合约距离到期时间的剩余时间,均以年为单位, 例如,6个月期的无风险年利率为4.17%。市场上正在交易一份标的证券为一年期贴现债券、剩余期限为6个月的远期合约多头,其交割价格为970元,该债券的现价为960元。其远期价值为 S=960,K=970,r=4.17%,T-t=0.5 该远期合约多头的远期价值为:
输入现货价格,交割价格,利率和剩余时间(月数),输出其远期价值
提示:math库中计算e指数的函数是exp(n)
from math import*
s=eval(input("现货价格"))
k=eval(input("远期价格"))
r=eval(input("利率"))
t=eval(input("剩余时间"))
#代码开始
f=s-k*exp(-r*(t/12))
#代码结束
print("远期价值{:.2f}".format(f))
第8关:小球落下距离和
任务描述
本关任务: 一个球从100米高处自由落下,每次落地后反跳回原高度的一半,再落下,再反弹。 本关任务:编写一个小程序,求第n次落地时,共经过多少米。。
n=eval(input())
#开始
s=100
y=100
for i in range(1,n+1):
if i>1:
y=y/2
S=s+y*2
if i==n:
print("{:.6f}".format(s))
else: