Python 洗发水循环圈
我在找出如何停止代码中的循环时遇到问题:Python 洗发水循环圈,python,Python,我在找出如何停止代码中的循环时遇到问题: def shampoo_instructions(num_cycles): for num_cycles in range(1,num_cycles+1): if num_cycles < 1: print 'Too few.' elif num_cycles > 4: print 'Too many.' else:
def shampoo_instructions(num_cycles):
for num_cycles in range(1,num_cycles+1):
if num_cycles < 1:
print 'Too few.'
elif num_cycles > 4:
print 'Too many.'
else:
print num_cycles, ': Lather and rinse.'
else:
print 'Done.'
shampoo_instructions(2)
def洗发水指令(num_周期):
对于范围内的num_循环(1,num_循环+1):
如果num_周期<1:
打印“太少”
elif num_cycles>4:
打印“太多”
其他:
打印周期数,':起泡并冲洗
其他:
打印“完成”
洗发水使用说明(2)
我的输出是:
1:起泡并冲洗
2:起泡并冲洗
完成了
当洗发水使用说明(6)时,我如何才能做到这一点
它只是打印“太多了。”
?将范围检查移动到实际循环之外,例如:
def shampoo_instructions(num_cycles):
if num_cycles < 1:
print 'Too few.'
elif num_cyles > 4:
print 'Too many.'
else:
for num_cycles in range(1,num_cycles+1):
print num_cycles, 'lather and rinse.'
print 'Done'
def洗发水指令(num_周期):
如果num_周期<1:
打印“太少”
elif num_cyles>4:
打印“太多”
其他:
对于范围内的num_循环(1,num_循环+1):
打印周期数,“起泡并冲洗”
打印“完成”
您正在范围内进行范围检查
-将其置于范围之外
,这样您就知道使用范围
是安全的。程序员是如何在淋浴中死去的?他读了洗发水瓶说明:起泡。冲洗重复。可能最好不要在中使用num_cycles
loop@Padraic在这种情况下,由于不可变且范围有限,这实际上并不重要,但这是一个很好的观点。。。如果原始的num_cycles
值需要保留,那么是的,OP应该明确地在for循环中重命名num_cycles
-好点:)只发现了它,因为我在使用break in the循环时出现了奇怪的行为;)