69

我有一个代表路径的字符串。因为这个应用程序在 Windows、OSX 和 Linux 上使用,我们已经定义了环境变量来正确映射来自不同文件系统的卷。结果是:

"$C/test/testing"

我想要做的是评估字符串中的环境变量,以便将它们替换为各自的卷名。是否有我遗漏的特定命令,或者我必须采取os.environ.keys()并手动替换字符串?

4

2 回答 2

112

使用os.path.expandvars扩展字符串中的环境变量,例如:

>>> os.path.expandvars('$C/test/testing')
'/stackoverflow/test/testing'
于 2008-12-22T18:35:16.433 回答
3

在 Python 3 中,您可以执行以下操作:

'{VAR}'.format(**os.environ))

例如

>>> 'hello from {PWD}'.format(**os.environ))
hello from /Users/william
于 2021-07-06T20:30:14.927 回答