使用python在字符串中扩展环境变量

时间:2011-03-10 10:54:56

标签: python posix

我有一个包含环境变量的字符串,例如

my_path = '$HOME/dir/dir2'

我想解析字符串,查找变量并将其替换为字符串:

print "HOME =",os.environ['HOME']
my_expanded_path = parse_string(my_path)
print "PATH =", my_expanded_path

所以我应该看到输出:

HOME = /home/user1

PATH = /home/user1/dir/dir2

在Python中有优雅的方法吗?

谢谢!

康纳

3 个答案:

答案 0 :(得分:26)

答案 1 :(得分:8)

import string, os
my_path = '$HOME/dir/dir2'
print string.Template(my_path).substitute(os.environ)

答案 2 :(得分:3)

您可以使用Template

from string import Template
import os

t = Template("$HOME/dir/dir2")
result = t.substitute(os.environ)