Student Loan Calculator
计算学生贷款的月付款、总利息和摊销时间表。
关于此工具
学生贷款计算器向你展示为教育借款的真实成本,而不仅仅是你借到的金额。它把本金、利率和期限换算成每月还款额和利息总额,揭示这笔贷款实际花费多少,以及需要多久才能还清。
输入贷款金额、年利率和还款期限,即可读取每月还款额、所支付的利息总额以及还清时间表。它适合用来比较不同贷款方案、制定切实可行的预算,以及判断是否值得提前多还。
哪怕利率只有微小差异,或每月多还一点,都能在整个贷款期内明显减少你支付的利息总额。这些数字是用于规划的估算,而非贷款报价,所有计算均在你的浏览器中本地完成。
常见问题
代码实现
def calculate_student_loan(principal: float, annual_rate: float,
years: int) -> dict:
"""Calculate student loan monthly payment and total interest."""
monthly_rate = annual_rate / 100 / 12
n = years * 12
if monthly_rate == 0:
monthly_payment = principal / n
else:
monthly_payment = principal * (monthly_rate * (1 + monthly_rate) ** n) / ((1 + monthly_rate) ** n - 1)
total_payment = monthly_payment * n
total_interest = total_payment - principal
return {
"monthly_payment": round(monthly_payment, 2),
"total_payment": round(total_payment, 2),
"total_interest": round(total_interest, 2),
}
def amortization_schedule(principal: float, annual_rate: float, years: int):
"""Generate full amortization schedule."""
monthly_rate = annual_rate / 100 / 12
n = years * 12
payment = calculate_student_loan(principal, annual_rate, years)["monthly_payment"]
balance = principal
for month in range(1, n + 1):
interest = balance * monthly_rate
principal_part = payment - interest
balance -= principal_part
yield {
"month": month,
"payment": round(payment, 2),
"principal": round(principal_part, 2),
"interest": round(interest, 2),
"balance": round(max(balance, 0), 2),
}
# Example: $30,000 loan at 5.5% over 10 years
result = calculate_student_loan(30000, 5.5, 10)
print(f"Monthly Payment: ${result['monthly_payment']}")
print(f"Total Payment: ${result['total_payment']}")
print(f"Total Interest: ${result['total_interest']}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.