2015-09-01 109 views
0

所以我是一個初學者,我正試圖做一個簡單的抵押貸款計算器。這是我的代碼:基本抵押貸款計算器

L=input('Enter desired Loan amount: ') 
I=input('Enter Interest Rate: ') 
N=input('Enter time length of loan in months: ') 

MonthlyPayments= [float(L)*float(I)*(1+float(I))*float(N)]/((1+float(I))*float(N)-1) 


print('Your Monthly Payments will be {0:.2f}'.format(MonthlyPayments))` 

,我也得到一個錯誤,指出:用於/不支持的操作數類型(S):名單'和 '浮動'

回答

0
MonthlyPayments= (float(L)*float(I)*(1+float(I))*float(N))/((1+float(I))*float(N)-1) 

'[' 和 ']'創建一個列表。

+0

嗯該死謝謝。我不知道那個括號裏面有那個哈哈..... – thedonace213

0

這裏:

MonthlyPayments = [float(L)*float(I)*(1+float(I))*float(N)]/((1+float(I))*float(N)-1) 

這一部分:

[float(L)*float(I)*(1+float(I))*float(N)] 

給出了一個 '清單' 數據類型。替換[]通過()

+0

謝謝你這幫了很多! – thedonace213

1

首先使用方括號將創建一個列表,這可能不是你想要的。此外,爲了避免不斷地進行轉換,您可以(也應該)用您期望得到的類型包裝您的輸入呼叫。

所以從您的示例代碼去,我會正是如此寫:

L=float(input('Enter desired Loan amount: ')) 
I=float(input('Enter Interest Rate: ')) 
N=float(input('Enter time length of loan in months: ')) 

MonthlyPayments = (L*I*(1+I)*N)/((1+I)*N-1) 

print('Your Monthly Payments will be {0:.2f}'.format(MonthlyPayments)) 

這也使得它更易於閱讀