【python 入门案例】hi finance python入门:余额宝计算案例
生活随笔
收集整理的這篇文章主要介紹了
【python 入门案例】hi finance python入门:余额宝计算案例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、計算余額寶年化利率
抄寫強哥的代買,并根據自己的理解做修改
代碼如下:
#simport math from decimal import * #import decimal# 改進版roud函數,可以四舍五入保留小數,返回 字符串 def new_round(x,n):return str(Decimal(str(x)).quantize(Decimal('0.'+'0'*n)))# 初始值 因人而異哦 total_money = 1106.7 # 總金額 income_yestoday = 0.10 # 昨日收益rate_day = income_yestoday / (total_money - income_yestoday) # 日利率 total_money_one_year = total_money * (1 + rate_day) ** 365 # 一年后總金額 **代表次方 total_income = total_money_one_year - total_money # 一年收益 rate_year = total_income / total_money # 年化print('余額寶年化利率大概為:' + new_round((rate_year * 100),2) + '%')輸出結果:余額寶年化利率大概為:3.35%
二、課后作業
假設余額寶日利率無變化,30天后轉出200元錢,然后不再操作余額寶的情況下,再過30天,余額寶的余額會是多少?接著上述代碼增加如下代碼:
# 假設余額寶日利率無變化,30天后轉出200元錢,然后不再操作余額寶的情況下,再過30天,余額寶的余額會是多少?---") total_money_30day = total_money * (1+rate_day) ** 30 - 200 # 30天后取出200后總金額 total_money_60day = total_money_30day * (1+rate_day) ** 30 # 60天后總金額print('余額寶60天后余額為:' + new_round(total_money_60day,2))輸出結果:余額寶60天后余額為:912.17
三、變形改進
若想要使得輸出余額不四舍五入,則將最后一行代碼改為
print('余額寶60天后余額為:' + str(total_money_60day))此時,輸出結果:余額寶60天后余額為:912.1736541751962?
在剛開始進行嘗試時,我將代碼改為
print('余額寶60天后余額為:' + total_money_60day)結果程序報錯,TypeError: must be str, not float,因為字符串不能和非字符串數據相連接,而total_money_60day變量此時賦值為浮點型數據,因此利用str()函數,將浮點型轉換為字符串就解決了問題
?
?
總結
以上是生活随笔為你收集整理的【python 入门案例】hi finance python入门:余额宝计算案例的全部內容,希望文章能夠幫你解決所遇到的問題。