我的初始值是薪水=500。我希望它每年增加 1%,这样我的数组就会看起来像[500,550,605,665.5]
等。基本上是1.1
乘以每个先前的值。
我为此使用了一个循环,但很好奇是否可以以某种方式使用numpy.arange
和numpy.repeat
来完成?
salary=500
for i in range(0,15,1):
salary=1.1*salary
print(salary)
使用1.1
作为基础来创建指数数组并使用起始值对其进行缩放 -
In [52]: 500*(1.1**np.arange(4)) # 4 is number of output elements
Out[52]: array([500. , 550. , 605. , 665.5])
您可以使用cumprod
来计算随时间推移的增加:
inc = np.full(15,1.1).cumprod()
这会将 1.1 数组中的每个元素乘以前一个值并累加。然后计算您的salary
:
salary = 500*inc
百分之一是 0.01 ((1/100(*1( 而不是 0.1
# 1% is 0.01 not 0.1(10%)
salary=500
years=input("How many years shall pass?")
print(salary)
for i in range (1,int(years)):
salary=(salary/100)*101
print(int(salary))
这是你的意思吗? 您也可以为数组创建一个列表(.append(,尽管对于这种类型的程序,我会使用 fortran。虽然我不知道你这样做的目的是什么。