使用源创建 python 到 运行 终端命令的脚本

Create python script to run terminal command with source

长话短说,我正在尝试找出一种方法将这些命令行转换为 python 中的脚本或函数,可以被另一个 python 应用程序调用。

这些是Linux中的命令行:

source tflite1-env/bin/activate
python3 stream.py --modeldir=TFLite_model

起初我认为这很容易,只需在 python 中启动应用程序即可 - 但我不太确定如何处理源代码部分。我以为它只是访问目录,但它对 .csh 文件做了一些事情...

我尝试了一种非常复杂的方法,创建了一个 .sh 文件,如下所示:

#!/bin/bash
cd ..
cd tflite1 
source tflite1-env/bin/activate
python3 stream.py --modeldir=TFLite_model

然后为我的主程序创建一个函数来调用所述文件:

import os
def startCamera():
os.system('sh script.sh')

使用此方法时,我收到有关未找到源的错误消息。

我认为问题是我基本上是在尝试调用太多相互终止的独立进程?必须有更好的方法。任何建议将不胜感激!

我把函数改成了:

import subprocess
def startTheCamera()
  subprocess.call("/home/pi/Desktop/launchCamera.sh")

我使用了 subprocess 而不是 os.system 并包含了完整的文件路径,现在可以使用了。我想也许它只需要完整的文件路径,即使它们都在同一个目录中。