Aufruf der App aus subprocess.call mit Argumenten

Ich bin ein Anfänger in Python und habe versucht, eine Befehlszeilen-App aufzurufen, aber es schlägt fehl:

>>> import subprocess as s
>>> s.call("gpio -g read 17")
Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/lib/python2.6/subprocess.py", line 470, in call
        return Popen(*popenargs, **kwargs).wait()
    File "/usr/lib/python2.6/subprocess.py", line 623, in __init__
        errread, errwrite)
    File "/usr/lib/python2.6/subprocess.py", line 1141, in _execute_child
        raise child_exception
OSError: [Errno 2] No such file or directory

Aber wenn ich hinzufügeshell=True es fängt alles an zu funktionieren. Kann mir jemand erklären warum?

>>> import subprocess as s
>>> s.call("gpio -g read 17", shell=True)
>>> 0

Antworten auf die Frage(1)

Ihre Antwort auf die Frage