AttributeError: 'NoneType' object hat keine attribute 'group'
bitte helfen, wie ich bin versucht, einen raspberry pi pir-sensor zur übertragung der Daten von den pir-sensor(1 oder 0 ) an den web-service
und ich habe diesen Fehler
Traceback (most recent call last):
File "pir_5.py", line 54, in <module>
moveHold = float(matches.group(1))
AttributeError: 'NoneType' object has no attribute 'group'
und das ist mein code
while True :
# Read PIR state
Current_State = GPIO.input(GPIO_PIR)
if Current_State==1 and Previous_State==0:
# PIR is triggered
output = subprocess.check_output(["echo", "18"]);
print " Motion detected!"
# Tell the Pi to run our speech script and speak the words
# motion dtected! - anything after the .sh will be read out.
matches = re.search("Current_State==1 and Previous_State==0", output)
moveHold = float(matches.group(1))
resultm = client.service.retrieveMove(moveHold)
cmd_string = './speech.sh motion detected!'
# now run the command on the Pi.
os.system(cmd_string)
# Record previous state
Previous_State=1
elif Current_State==0 and Previous_State==1:
# PIR has returned to ready state
print " Ready"
Previous_State=0
# Wait for 10 milliseconds
time.sleep(0.01)
InformationsquelleAutor user3440694 | 2014-03-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dann natürlich die
output
enthält nicht den erwarteten string. (Wie sollte es, wenn es erzeugt wird, durch den Aufrufecho 18
?) So,zurück
None
, die keine.group()
fürso, dass Sie das gesagt Ausnahme.
Sollten Sie ändern, um
InformationsquelleAutor glglgl
Punkt, an dem Sie schrieb
Spiele war
None
. Es scheint, dass dein regex-Suche fehlgeschlagen, um eine übereinstimmung zu finden. Wenn es möglich ist, für die regex-Suche scheitern, dann müssen Sie behandeln, Szenario explizit:Oder vielleicht das eigentliche problem ist, dass Ihr code, um die Suche durchzuführen ist einfach falsch.
Anstatt mich versuchen, Ihnen zu sagen genau was zu tun ist um das problem zu beheben, der wichtigste Punkt für Sie ist zu lernen, wie zu interpretieren, diese Besondere Fehlermeldung.
InformationsquelleAutor David Heffernan