Python:真或假
作者:互联网
我不是一个经验丰富的程序员,我的代码有问题,我认为这是我的逻辑错误,但我在http://anh.cs.luc.edu/python/hands-on/3.1/handsonHtml/whilestatements.html找不到答案.
我想要的是检查串行设备是否被锁定,“它被锁定”和“它没有被锁定”的条件之间的不同是在包含GPGGA字母的行中有4个逗号,,,,.所以,如果没有,,,,我希望我的代码启动,但我想我的循环是错误的.任何建议将不胜感激.提前致谢.
import serial
import time
import subprocess
file = open("/home/pi/allofthedatacollected.csv", "w") #"w" will be "a" later
file.write('\n')
while True:
ser = serial.Serial("/dev/ttyUSB0", 4800, timeout =1)
checking = ser.readline();
if checking.find(",,,,"):
print "not locked yet"
True
else:
False
print "locked and loaded"
.
.
.
解决方法:
使用break退出循环:
while True:
ser = serial.Serial("/dev/ttyUSB0", 4800, timeout =1)
checking = ser.readline();
if checking.find(",,,,"):
print "not locked yet"
else:
print "locked and loaded"
break
True和False行在您的代码中没有做任何事情;它们只是引用内置的布尔值而不将它们分配到任何地方.
标签:python,while-loop,boolean,boolean-logic 来源: https://codeday.me/bug/20190722/1506268.html