Python财经应用基础 习题及答案 第4章题目及答案_第1页
Python财经应用基础 习题及答案 第4章题目及答案_第2页
Python财经应用基础 习题及答案 第4章题目及答案_第3页
Python财经应用基础 习题及答案 第4章题目及答案_第4页
Python财经应用基础 习题及答案 第4章题目及答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【项目实践】Python应用之银行理财收益

任务一计算理财利息

美迪公司财务部的王善有•笔10000元的闲置资金,她准备存入银行三年,以获取•定的收

益,银行按单利每年5%的利率计算利息,三年下来,她可以获得多少利息?三年后在银行

取出的本利和是多少?

备注:p本金:r收益率(解释什么是收益率):n投资期数,注意投资期数和收益率保

持同一单位,如收益率为年收益率.,则投资期数为年数。

单利是指在计算利息时,每一次都是按照初始投资双方确认的本金为计算利息的基数,每次

计算的利息并不转入下一次本金中。

单利计算公式:F=P+P*r*n

参考代码:

#定义单利利息计算函数(知识技能点:定义函数,调用出数,return语句)

defdanii_interes():

p=10000

r=0.05

n=3

[=p京r京n

returnI

DI=danli_interes()

print/在单利算法卜获得利息{DI}元J)

#定义单利利息计算函数(知识技能点:函数的参数传递)

defdanii_income(p,r,n):

m=p+p*r*n

returnround(m,2)

DA=danli_income(10000,0.05,3)#(知识技能点:函数的形参与实参,函数

的必需参数)

print(f在单利算法下获得本利和{DA}元J)

DA=danli_incoinc(p=10030.n=3.r=0.05)#(知识技能点:函数的关键字参数)

prinl(f在单利算法下获得本利和{DA}元。)

#定义单利本利和计兑函数(知识技能点:函数的默认参数)

defdanli_income(p.r,n=3):

returnround((p+p*r*r.).2)

DA=danli_income(p=10000,r=0.05)

print(f在单利算法下获得本利和{DA}元J)

DA=danli_income(IOOOO,O.O5,n=4)#(知识技能点:修改函数的默认参数)

print#在单利算法下获得本利和{DA}元J)

#定义单利本利和计算函数(知识技能点:匿名函数)

DA=lambdap.r,n:p+p*r*n

prinl(f在单利算法下获得本利和{DA(10000.0.05,3)}元。)

任务二计算理财投资额

美迪公司准备在三年后投资一个新项目,该项目需要的投资资金是200万元,美迪公司想将

部分闲置资金投资银行理财产品,以在获得收益的同时确定三年后能有这笔资金使用。

银行有两种理财产品,第一种是存入三年中可随时取出,按单利计算利息,利率为0.10;

第二种是存入三年中不可取出,按复利计算利息,利率为0.110

现在美迪公司应该购买哪种理财产品?应该购买多少?

己知投资收益率为r,投资期数为n,到期获得理财收益额为fv

单利模式下,理财投入额pv=fv/(I+r*n)

复利模式下,理财投入额pv=fv/(l+r)**n

参考代码:

c-表示每期的现金流

r-表示投资收益率

n-表示投资期数

fv-表示到期获得的理财收益额

”,

#定义第一种理财方式的理财投入额函数

defdanli_pv(fv,r,n):

pv=fv/(l+r*n)

returnround(pv,2)

DENL1_PV=danli_pv(2()(),0.10,3)

print(f选择第一种理财方式,现在需要投资{DENU_PV}万元J)

#定义第二种理财方式的理财投入额函数

deffuli_pv(fv,r,n):

pv=fv/(l+r)**n

returnround(pv,2)

FULLPV=fuli_pv(2(X),0.11,3)

print(f选择第二种理财方式,现在需要投资{FULLPV}万元。)

任务三优选理财方案

因为企业用于将来投资的金额时常有变化,投资发生的时间也存在不确定因素,银行的利率

也是浮动的,

编写一个程序,用于计算在任意收益率,任意理财投资时间和任意期望收益额下,根据现在

需要投入资金的大小,从两种理财方案中选择出较优的投资方案。

参考代码:

,,,

C-表示每期的现金流

r-表示投资收益率

n-表示投资期数

fv-表示到期获得的理财收益额

,,,

#定义第一种理财方式的理财投入额函数

defdanli_pv(fv,r,n):

pv=fv/(I+r*n)

returnround(pv,2)

#定义第二种理财方式的理财投入额函数

deffuli_pv(fv,r,n):

pv=fv/(l+r)**n

returnround(pv,2)

#第一种方法

#1.创建接受参数的函数

defpick_ovcr():

globalfv,rl,r2,n#(知识技能点:变量的作用域,global,呆留字)

fv=cval(inpulC请输入到期希望获得的理财收益额为:,))#(知识技能点:交互传参)

rl=cval(inpuiC请输入第一种理财方案的年收益率为:,))

r2=cvaKinpul('请输入第二种理财方案的年收益率为:,))

n=cval(input(,请输入投资年限为:))

#2.调用pick_over函数

pick_ovcr()

#3.调用第一、二种理财方案投入额函数

d_pv=danli_pv(fv,rl,n)#(知识技能点:困数调用,体现困数的复用以及便利之处)

f_pv=fuli_pv(fv,r2,n)

#4.设置择优条件

pick='第一种理财方案优'ifd_pv<f_pvelse'两种方案一样'ifd_pv==f_pvelse'第二种理财

方案优’

#5.打印结果

prin((f"

选择第一种理财方案,现在需要投入{d_pv}万元,

选择第二种理财方案,现在需要投入{f_pv}万元。

{pick}“)

#第二种方法,对比第一种方法说明变量的作用域问题。

#定义第一种理财方式的理财投入额函数

defdanli_pv(fv,r.n):

pv=fv/(l+r*n)

returnround(pv,2)

#定义第二种理财方式的理财投入额函数

deffuli_pv(fv,r,n):

pv=fv/(l+r)**n

returnround(pv,2)

#1.创建接受参数的函数

defpick_ovcr():

#globalfv,rl,r2.n#(知识技能点:此处不需要将

fv,rl,r2,n定义为全局变量)

fv=eval(inpuW请输入到期希望获得的理财收益额为:A

rl=cval(inpu〔C请输入第一种理财方案的年收益率为:,))

r2=cval(inpuiC请输入第二种理财方案的年收益率为:,))

n=cval(inpu【('请输入投资年限为:'))

#2.调用第一、二种理财方案投入额函数

d_pv=danli_pv(fv,rl.n)

f_pv=fuli_pv(fv,r2,n)

#3.设置择优条件

ifd_pv<f_pv:

pick='第一种方案优’

clifd_pv==Cpv:

pick=,两种方案一样优,

else:

pick廿第二种理财方案优’

#4.打印结果

print(f-

选择第一种理财方案,现在需要投入{d_pv}万元,

选择第二种理财方案,现在需要投入{f_pv}万元。

{pick},

#5.调用pick_ovcr函数

pick_over()

【思考测试】

L选择题

(1)不属于函数的优点的是()(单选题)

A.最大化代码重用

B.最小化代码冗余

C.复杂过程的分解

D.简单问题复杂化

(2)函数的参数按使用的方式分类不包括()(单选题)

A.关键字参数

B.默认参数

C.自定义参数

D.不定长参数

(3)关于python类继承,下列描述错误的是?()

A.定义子类的实例时,可以通过子类的init()方法,给父类的所有属性赋值。

B.对于继承而来的父类方法,如果它不符合子类所期望的行为,那么就必须建立新

的突。

C.super()是一个特殊函数,它会把父类和子类关联起来。

D.子类除了拥有继承父类而来的属性和方法之外,还可以自定义子类自己的属性和方

法。

(4)关于实参与形参,以下描述正确的是?()(多选题)

A.位置实参指的是,实参的顺序与形参相同。

B.位置实参与参数顺序无关。

C.关犍字实参指的是:传递给函数的是“名称-值对”。这样在调用函数时就不用考

虑实参顺序,而且还可以清楚地指出实参各个值的用途。

D.使用关键字实参时,必须准确地指出定义中的形参名。

E.可以给每个形参指定默认值。如果在调用函数时,有给形参提供实参,那么将使

用指定的实参值:如果没有,那么将使用默认值。

(5)面向对象程序设计的三大特征是()(多选题)

A.传承

B.封装

C.继承

D.多态

(6)Pylhon函数的组成部分中包含()(多选题)

A.定义函数的关键字def

B.函数体

C.return语句

D.函数的参数

(7)关于函数编写格式规范,以下描述正确的是?(ABCE)

A.使用描述性名称来定义函数名。通过描述性名称,可以让我们很容易理解这个函数

可以做什么。

B.只使用小写字母与下划线。

C.包含可以简要阐述其功能的注释,该注释以文档字符串格式定义,并且紧跟在函数

定义之后。

D.如果程序或模块包含多个函数,即使挤在一起,也没有关系。

E.所有的impori语句,都应该放在文件开头,程序级注释之后。

答案:1-5DCBACDEBCD

6-7ABCDABCE

2.程序题

1、已知有一个包含一些同学成绩的字典,计算成绩的最高分、最低分、平均分,最后打印

最高分、最低分、平均分。

scores={"ZhangSan":45,"LiSi':78,"WangWu":40,"ZhouLiu":96,"ZhaoQi":65,"SunBa":90,

"ZhengJiu":78,"WuShi":99,"DongShiyi":60}

答案:

scores={"ZhangSan":45,"LiSi':78,"WangWu":40,"ZhouLiu":96,"ZhaoQi":65,"SunBa":90,

"ZhengJiu":78,"WuShi":

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论