Это действительно зависит от того, как вы хотите его напечатать. Но все, что вы хотите напечатать, это числа. Вы можете отформатировать свой отпечаток или просто напечатать все в виде строки:
print(str(rate)+', '+str(principal)+', '+str(simple)+', '+str(compund))
Но это то же самое, что распечатать его, как вы пытались:
print(rate, principal, simple, compound)
>>>
5, 10000, 12500.0, 10000.003125000001
5, 11000, 13750.0, 11000.003437500001
5, 12000, 15000.0, 12000.003750000002
5, 13000, 16250.0, 13000.004062500002
5, 14000, 17500.0, 14000.004375000002
10, 10000, 15000.0, 10000.1
10, 11000, 16500.0, 11000.11
10, 12000, 18000.0, 12000.12
10, 13000, 19500.0, 13000.130000000001
10, 14000, 21000.0, 14000.140000000001
Это действительно зависит от вас. В вашем вставленном коде есть некоторые ошибки, но я предполагаю, что вы имели в виду следующее:
N=5
for rate in range(5,15,5):
for principal in range(10000,15000,1000):
simple = principal * (1+(rate/100)*N)
compound = principal * (1+(rate/100)**N)