以下是我目前在python 3中拥有的内容:
a = 0
b = 0
c = 0
M = 100
T = 100
mth = [[25,50,100], [70,50,88], [5,10,33]]
for i in mth:
m = i[0]
t = i[1]
h = i[2]
if a+m <= M:
a = a+m
M = M-m
else:
continue
if b+t <= T:
b = b+t
else:
continue
c = c + h
print(a,b,c)
上述问题是我应该添加前两个元组并打印
95 100 188
但是由于某种原因,当for循环在mth到达第二个元组时,它会检查a + m <= M,即使此时为true,也直接进入Else语句,最后将第三个元组加在一起给予
30 60 133
我尝试删除第三个元组,但是它仍然跳过了第二个元组。 我在这里做些傻事吗?任何帮助表示赞赏!
答案 0 :(得分:0)
第一次迭代后,M
的值为75,而不是100。因此,在第二次迭代中,a + m = 25 + 70 = 95 > M
,而不是您期望的<= M
。