python-3.x 如何修复我的代码给予计算的现金金额加上利率作为最终结果[重复]

ppcbkaq5  于 2022-12-15  发布在  Python
关注(0)|答案(2)|浏览(105)

此问题在此处已有答案

How do I get a result (output) from a function? How can I use the result later?(4个答案)
3天前关闭。
我无法让我的代码工作。我看到:

TypeError: unsupported format string passed to function.__format

下面是我尝试的代码:

def formatCurrency(money):
    moneyString = f'${money:.2f}'
    return moneyString
    
    def updateBalance(amount, interest):
    amount = (1+(interest*1))
    return updateBalance


    ### Main Program ###
    savBal = float(input("Enter your savings balance: "))
    chBal = float(input("Enter your checking balance: "))
    savIR = float(input("Enter your saving interest rate %: "))
    chIR = float(input("Enter your checking interest rate %: "))

    savBal = updateBalance(savBal, savIR)
    chBal = updateBalance(chBal, chIR)

    print("Your updated savings balance is" , formatCurrency(savBal))
    print("Your updated checking balance is" , formatCurrency(chBal))
nbysray5

nbysray51#

代码无法正常工作,出现以下错误,因为在函数formatCurrency中,变量值的类型应为float,但您将函数引用作为updateBalance函数的返回值传递
TypeError:传递给函数的格式字符串不受支持。format
将函数返回值替换为amount变量,您的代码将正常工作并解决问题。

def updateBalance(amount, interest):
    amount = (1+(interest*1))
    return amount
lokaqttq

lokaqttq2#

仅在def updateBalance(amount, interest): amount = (1+(interest*1)) return updateBalance #here's the problem处出现打字错误
你想要的是def updateBalance(amount, interest): amount = (1+(interest*1)) return amount

相关问题