如何在Python代码中使用bash变量?

如何在Python代码中使用bash变量?,python,bash,Python,Bash,我想这样做: import subprocess subprocess.call(['var="foo_bar"'], shell=True) subprocess.call(['echo $var'], shell=True) 但当我在第二行中使用$var时,您的价值将丢失 有人知道解决这个问题的方法吗? 这是一个简单的示例,但需要在更复杂的代码中实现 Tks..你不能。您可以使用环境变量(os.environ),当然也可以使用作为命令行参数传递的所有内容(sys.

我想这样做:

    import subprocess 
    subprocess.call(['var="foo_bar"'], shell=True)
    subprocess.call(['echo $var'], shell=True)
但当我在第二行中使用$var时,您的价值将丢失

有人知道解决这个问题的方法吗? 这是一个简单的示例,但需要在更复杂的代码中实现


Tks..

你不能。您可以使用环境变量(
os.environ
),当然也可以使用作为命令行参数传递的所有内容(
sys.argv
),但是bash变量是bash变量,而不是Python变量。您必须找到另一种方法(如果您告诉我们您到底想做什么,也许我们可以建议一种方法)。

使用
os.environ
将值注入到环境中

os.environ['var'] = "foo_bar"
subprocess.call(['echo $var'], shell=True)

另请查看
env
参数至
subprocess.Popen
subprocess.call