Я пытаюсь собрать калькулятор, но он показал ошибку, и я много искал. Я не понял, что происходит в моем коде. основная проблема заключается в def create_graph (данные, заем): SyntaxError: неверный синтаксис.
from matplotlib import pyplot as plt
def get_loan_info():
"""get basic info stor in dictionary"""
loan={}
loan['principal']=float(input("\Enter loan amount: "))
loan['rate']=float(input("enter interest rate: "))/100
loan['monthly payment']=float(input("Enter monthly payment: "))
loan['money paid']=0
return loan
def show_loan_info(loan,number):
"""display the current status"""
print("\n .....--loan information... "+ str( number)+'months---')
for key,value in loan.items():
print(key.title()+ " : "+ str(value))
def collect_interest(loan):
"""update for interest per monthly"""
loan['principal']=loan['principal']+loan['principal']*loan['rate']/12
def make_montly_payment(loan):
"""simulate montly payment """
loan['principal']=loan['principal']-loan['monthly payment']
if loan['principal']>0:
loan['money paid']+=loan['monthly payment']
else:
loan['money paid']+=loan['monthly payment']+loan['principal']
loan['principal']=0
def summerize_load(loan,number,initial_principal):
"""dispay the results"""
print('\n Congratulation! You have paid off yur loan in'+str(number)+" months")
print("you initial loan was $"+str(initial_principal)+"at a rate of "+str(100*loan['rate']))
print('your montly payment was $'+str(loan['monthly payment']+".")
def create_graph(data,loan):
"""create graph to principal and month"""
x_values=[] #month
y_values=[] #pric
for point in data:
x_values.append(point[0]) #o mont ,.1 principal
y_values.append(point[1])
plt.plot(x_values,y_values)
plt.title(str(100*loan['rate'])+"%interest with $"+str(loan['monthly payment'])+'monthly
payment')
plt.xlabel('month number')
plt.ylabel('principal of loan')
plt.show()
#main app
print('welcome to the loan calculator app')
#intitalize
month_number=0
my_loan=get_loan_info()
starting_principal=my_loan['principal']
data_to_plot=[]
show_loan_info(my_loan)
input('press enter to pay off your loan. ')
Я, если есть, выясню, почему он показал синтаксическую ошибку. Думаю, это правильно во всех отношениях.