我的代码在任何天数内都遵循以下模式。 有没有任何方法可以做某种循环来简化它,而不必硬编码每一种情况? 我必须在没有循环的情况下写大约400行。
if dia == 0: mapa[dia] = mapa[dia]
if dia == 1: mapa[dia] = mapa[dia].subtract(mapa[0])
if dia == 2: mapa[dia] = mapa[dia].subtract(mapa[0]).subtract(mapa[1])
if dia == 3: mapa[dia] = mapa[dia].subtract(mapa[0]).subtract(mapa[1]).subtract(mapa[2])
if dia == 4: mapa[dia] = mapa[dia].subtract(mapa[0]).subtract(mapa[1]).subtract(mapa[2]).subtract(mapa[3])
if dia == 5: mapa[dia] = mapa[dia].subtract(mapa[0]).subtract(mapa[1]).subtract(mapa[2]).subtract(mapa[3]).subtract(mapa[4])
if dia == 6: mapa[dia] = mapa[dia].subtract(mapa[0]).subtract(mapa[1]).subtract(mapa[2]).subtract(mapa[3]).subtract(mapa[4]).subtract(mapa[5])
可以使用reduce
,也可以使用简单的forloop
for i in range(dia):
mapa[dia] = mapa[dia].subtract(mapa[i])