2011-03-10 92 views
16

我有一個包含環境變量的字符串,例如使用python擴展字符串中的環境變量

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中做到這一點?

謝謝!

康納爾

回答

23
+0

謝謝你,我想通必須有它一個簡單的命令。 – Conor 2011-03-10 11:21:01

+0

@Conor:很高興幫助:) – mouad 2011-03-10 11:35:04

+0

令人難以置信。我以爲我將不得不實施它。 – 2018-02-05 06:45:02

2

你可以使用一個Template

from string import Template 
import os 

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