首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支付利息的Python For Loops

支付利息的Python For Loops
EN

Stack Overflow用户
提问于 2015-03-08 01:12:24
回答 4查看 11.9K关注 0票数 1

我试图运行这个程序,让它为我的函数接受3个参数,并使用它计算复合利息在一段时间内,然后计算和显示的总和在时间周期结束。

这是我的密码:

代码语言:javascript
复制
principal=float(input("Enter an initial principal value: "))
interest=float(input("Enter an interest rate: "))
years=int(input("enter how many years it will take: "))

def payment(principal, interest, years):
    n=principle*((1+interest)**years)

    for n in range(principal,total):
        print(n)
        total=n+total

payment(principal, interest, years)

我在这个模型中遇到的问题是,它给了我一个错误:

代码语言:javascript
复制
    for n in range(principal,total):
TypeError: 'float' object cannot be interpreted as an integer

此外,我不太确定它是否会将每个时期的利息复合起来,并在计算下一年的复合利息时将其加到本金中。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-03-08 01:20:12

试一试:

代码语言:javascript
复制
def payment(principal, interest, years):

    for period in range(years):
        total = float(principal) * float((1+interest)**float(period+1))
        print 'Period:', period+1
        print 'Total:', total

    return  total
票数 5
EN

Stack Overflow用户

发布于 2015-03-08 01:18:49

范围必须使用整数。请参阅此链接http://www.pythoncentral.io/pythons-range-function-explained/

票数 1
EN

Stack Overflow用户

发布于 2015-03-08 02:27:21

python中的范围接受开始、停止和步骤的整数值。按照医生的说法

这是一个通用的函数,用于创建包含算术进度的列表。它最常用于for循环。参数必须是纯整数。

https://docs.python.org/2/library/functions.html#range

当你说

代码语言:javascript
复制
for n in range(principal,total):
        print(n)
        total=n+total

您将浮点值传递给range函数。另外,如果计划每年打印总计,那么使用for循环的方式是不正确的。如果原理和总和是整数,比如(100,200),它就会把值设为101,102等等。代码除了给你每年的细分之外,还做了一些事情。

下面的代码应该可以帮助您做您想做的事情

代码语言:javascript
复制
''
Let i be in percentage
'''
def computeCompound(s,i):
    v = s
    while True:
        v = v*(1.0 + float(i)/100)
        yield v

c = computeCompound(100,20)

for period in range(1,4):
    print period
    print c.next()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28921999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档