Python 给定数字后从循环中断
我有一个问题,我的“中断循环”的工作,它不会抛出任何错误,所以我甚至不能看到发生了什么。当我告诉脚本开始闪烁我的LED时,这是选项3。最初,我在研究是否有办法在循环仍在运行时运行循环并返回主菜单,但这不是选项,因此我想尝试类似于“for number in range(10)”的方法 这个例子很好:Python 给定数字后从循环中断,python,raspberry-pi,Python,Raspberry Pi,我有一个问题,我的“中断循环”的工作,它不会抛出任何错误,所以我甚至不能看到发生了什么。当我告诉脚本开始闪烁我的LED时,这是选项3。最初,我在研究是否有办法在循环仍在运行时运行循环并返回主菜单,但这不是选项,因此我想尝试类似于“for number in range(10)”的方法 这个例子很好: number = 0 for number in range(10): number = number + 1 if number == 5: break
number = 0
for number in range(10):
number = number + 1
if number == 5:
break # break here
print('Number is ' + str(number))
print('Out of loop')
输出:
Number is 1
Number is 2
Number is 3
Number is 4
Out of loop
我不知道这是否会有帮助,但也许可以尝试使用quit或while循环,例如: 当数字==5时:
退出(这将使程序停止)
但是,即使您使用break,在它之后编写代码也没有意义,因此可能会对后面的代码进行注释,看看它是否有效。如果我理解正确,如果数字==5,您希望切换指示灯
在
break
之后编写命令没有多大意义。你的问题不清楚-试着解释你想要实现什么,而不是如何实现。为什么在范围循环中使用number=number+1
?这没有任何意义。你能清楚地描述一下它应该做什么吗?闪烁选项在达到5之前什么也不做,然后它甚至什么也不做,但在任何情况下它都不会闪烁。什么是“主菜单”?对不起,我的英语。我试着选择选项3,让循环运行5次,然后退出或返回主菜单。你认为他想让led闪烁5次吗?不是100%确定,因为这个问题没有多大意义。是的,我希望led闪烁(循环)5次
Number is 1
Number is 2
Number is 3
Number is 4
Out of loop
elif choice == 3:
for number in range(0,5):
GPIO.output(LedPin, GPIO.LOW + str(number)) # Led ON
time.sleep(0.05)
GPIO.output(LedPin, GPIO.HIGH + str(number)) # Led OFF
time.sleep(0.05)
#print ('Number is ' + str(number)) #will be 4, went 5 times