2015-06-04 19 views
0

嗨,我是python編程新手。

我想從源文件複製到目的地。我正在使用shutil.copy2(src,dst)。 但是在src和dst路徑中,我想使用變量。

例如(變量​​名):程序包名稱= XYZ_1000 這樣的src路徑將是:/家庭/數據/ $程序包名稱 /file.zip

在外殼我們可以用$程序包名稱訪問變量,所以Python中有沒有類似的方法?

主要關心的是,如果我想在複製命令中使用變量,我如何在python中實現這一點? 在此先感謝。

+2

http://stackoverflow.com/questions/4450592/string-interpolation-in-python – Blorgbeard

+0

謝謝。但我的問題是不同的。讓我知道如何在python中使用copy命令中的變量? – deepu

+0

看起來是一樣的,給出你接受的答案。 – Blorgbeard

回答

3
pkg_name = XYZ_1000 

使用格式()

src_path = "/home/data/{pkg_name}/file.zip".format(pkg_name=pkg_name) 

OR

src_path = "/home/data/%s/file.zip" % pkg_name 

OR

src_path = "/home/data/" + pkg_name + "/file.zip" 

OR

src_path = string.Template("/home/data/$pkg_name/file.zip").substitute(locals()) 
# Or maybe globals() instead of locals(), depending on where pkg_name is defined. 
+0

爲了完整,我添加了一個'string.Template'的例子。我實際上不推薦使用它,如果你想[在文檔中閱讀它](https://docs.python.org/2/library/),有幾種方法可以傳遞'pkg_name'的值。 string.html#模板字符串)。 – chepner

+0

@chepner,非常感謝 – deepu

相關問題