Python相当于Bash命令“ echo”吗? - python

我试图用Python控制我的RPi上的GPIO,但没有那些需要使用根权限的模块之一。
我发现通过控制台将“ 1”或“ 0”“回送”到GPIO的值文件的简单方法。我还编写了一个Python脚本来自动执行此操作。到目前为止,一切都很好。
但这仅在文件(在本例中为/ sys / class / gpio / gpio17)已经存在的情况下有效。
每次启动Pi后,我都可以通过控制台轻松地创建此文件夹,如下所示:

pi@raspberrypi ~ $ cd /sys/class/gpio
pi@raspberrypi /sys/class/gpio $ echo "17" > export

之后,我将拥有/ sys / class / gpio / gpio17文件夹,在其中可以找到有关该引脚的信息并可以对其进行修改。

所以基本上我的问题是:我如何将这一步整合到我的Python脚本中。有没有一种方法可以移动到目录并使用Python导出此文件夹?
我用一个单独的Bash脚本弄清楚了这一点,然后在Python脚本中运行它,但是我想避免使用几种语言,并且想知道Python中是否有等效于“ echo”命令的命令。
我搜索了几天,但找不到任何东西。
如果有的话,一个链接将不胜感激!

先感谢您,

一个新手

python大神给出的解决方案

有很多选择。您可以通过os模块(或更灵活-subprocess模块)在python代码中直接使用bash语法。

在您的工作目录中启动python解释器,然后,

>>> import os
>>> os.system("echo 18>import")
0
>>> exit()
$ ls -a
.  ..  import
$ cat import
18

或写入文件。

>>> with open("newport", "w") as newport:
...     newport.write("19")
... 
>>> exit()
$ ls -a
.  ..  import  newport
$ cat newport 
19

等等。看看original documentation