其实写月支出的那个程序,我一直在纠结怎么写循环。后来看了python大大的解析才知道,居然还有range(30)这样的操作。for循环经常和range内置函数配合在一起使用,range函数生成一个从零开始的列表。
python大大的图
我的图
对于month_sum这个变量,在循环外就赋初始值为0,进入一个30次的循环,循环每一次都会加上字典里的value,就可以得到月支出总计。
对于day_sum这个变量,在循环内赋初始值,这样每一次循环开始都会被清零,这样每一天的花费都是一样的。如果day_sum和month_sum放在一起,则会变成这样。
这里还有一个输出次数的问题,应该就是缩进的问题。month_sum对应的是第一个for循环,所以只输出一次。而day_sum对应的是第二个for循环,所以输出了30次。不知道这个里面对应的是python的哪个规则,month_sum为什么不像day_sum一样输出30次?