2013-03-09 117 views
1

我是新來的Python(和編程),所以忍耐一下,如果我真的問愚蠢的問題:)包括變化的變量到輸出文件的名稱在Python

所以,我想包括在文件名中的變量的結果。這是我到目前爲止有:

resfile = open("simple.csv","w") 
#lots of stuff of no relevance 

resfile.close() 

在腳本我有兩個變量,minLenght = 5000和minBF = 10,但我想改變他們,並運行該腳本再創建一個新的文件,在那裏我可以看到創建文件標題中的變量數量,例如simple500010,我想每次運行兩個變量的不同值的腳本時創建一個新文件。

我嘗試這樣做:

resfile = open("simple" + [str(minLength)] + [str(minBF)].csv,"w") 

但是,這並不工作。

任何想法?

回答

7

幾乎在那裏!與[ ],它返回一個列表分配:

minLength = 5000 
minBF = 10 

resfile = open("simple" + str(minLength) + str(minBF) + ".csv","w") 

resfile.close() 

而且,你沒有圍繞「.csv」文件的任何報價。

但是,將函數直接構造成函數參數(如open)的問題在於它是一個要調試的小豬。您可能會發現它更容易使用一個變量來儲存在第1名:

filename = "simple" + str(minLength) + str(minBF) + ".csv" 
resfile = open(filename,"w") 

現在,您可以構建一個字符串的其他方法進行實驗,而無需使用+str()所有的時間,例如:

filename = "simple%d%d.csv" % (minLength,minBF) 
print filename 
+0

這很完美!非常感謝! – 2013-03-09 14:30:14