我正在運行此代碼,它嵌入在其他一些東西,這就是爲什麼它在變量之前有self.
。 ser.readline()
將返回1.但我認爲這是一個string
,'1'
。無論如何,它的結果是我的if
聲明不工作,我認爲這是因爲一些類型不匹配,但我不能把它的手指。我已經盡了一切努力使其工作。由於print self._dinput_value
返回1,它的類型是str
,我很難過。如果聲明不起作用,似乎是一個類型錯誤
反正這裏是:
print "sending data"
ser.write("6" + "," +str(self._pin_no) +","+"1")
time.sleep(1)
self._dinput_value = ser.readline(2)
print self._dinput_value
print type(self._dinput_value)
time.sleep(1)
if str(self._dinput_value) =="1":
self._d = False
return self._d
elif str(self._dinput_value) == "2":
self._d =True
return self._d
else:
print "CODE EXITED with ERROR ??: Arduino went funny, sorry"
謝謝!
不要使用打印。使用repr來查看價值是什麼。我認爲在1.後面可能會出現一個換行符。 – zhangyangyu
發佈特定的錯誤和回溯使我們在嘗試幫助時不必猜測太多。 – msw