Link to home
Start Free TrialLog in
Avatar of dynamicOne
dynamicOne

asked on

Syntax Problem

I have a Python script I am trying to run.

import commands
cmd = 'gpio read 1'
output = commands.getoutput(cmd)

if commands.getoutput(cmd) == 0:
   print ('The door is closed.')

When I run it, nothing happens. It just goes to the next line instead of printing.

Any idea what I am doing wrong?
Avatar of TommySzalapski
TommySzalapski
Flag of United States of America image

What are you trying to get it to do? commands.getoutput(cmd) is returning a non-zero value. What are you wanting it to return?
Avatar of dynamicOne
dynamicOne

ASKER

This is on a raspberry pi. It should return a value of 1 or 0.
So it is returning 1.
Yes, it will return 1 when the door is open. Am I writing the condition statement wrong?
ASKER CERTIFIED SOLUTION
Avatar of TommySzalapski
TommySzalapski
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
When type gpio read 1 at the console it outputs 0 if the door is closed and 1 if it is opened
I found a script and was able to modify it to get what I want, is it okay with you if I post it here with my question or should I close this out and open another question?
Technically, you should start a new question if it is a different issue. That's a better way to get more eyes on the issue anyway.
I see the actual problem now that I saw the other script. You should have been checking if it was == to "0" instead of 0. But I think you see that now too.