python的function输出问题

请问怎么给python的function改名并输出啊,我这个input('discount_rate:')输出显示错误,只能显示整数,请问有没有输入小数的
Input:
n = 6
pmt = 400
discount_rate = 0.12
Expected output:
Call pv_ordinary_annuity8(pmt,n,discount_rate) function
=>> Output: 1644.56

我写的
data1 = int(input('n:'))
data2 = int(input('pmt:'))
data3 = int(input('discount_rate:'))
pv= data2*((1-(1/(1+data3)**data1))/data3)
print(round(pv,2))
请问如何改

输入小数就把int换成float啊

img