2017-06-16 75 views
0

使用此:字符串寫入到文件

def Files(x,y,z): 
    newH = x[:2] 
    newH+Hero == open(x , "w") 
    newH+Hero.write('z','y') 
    newH+Hero.close() 

我想創建一個新的文件,爲每個選項共24件尚未錯誤是:AttributeError的:「海峽」對象沒有屬性「寫」 以非零狀態退出任何想法?

+3

1.您不能在變量名中使用「+」。 2.'newH + Hero == open(x,「w」)'是一個比較,而不是一個賦值。 –

回答

1

由於已經提到+不能在python中的變量名。

如果我理解正確的,你需要一個功能Files(這又是不是在Python名稱功能推薦的方式,它應該與小寫字母開頭),它接受3個參數:x - 文件名寫入,yz是要寫入文件x的字符串。

同樣,最好爲變量和參數使用更有意義的名稱,如filename,name0,name1(如果其他參數是某些字符串名稱)。

你的函數可以是這樣的:

def files(x, y, z): 
    with open(x, 'w') as f: 
     f.write(y) 
     f.write(z) 

此功能將打開一個文件名xyz(我懷疑他們是在你的案件串)的文件x

+1

我有一個懷疑,「英雄」是一個全球(或成員)變量設置爲上述24個選項之一,所以'與開放(X +英雄,'W')爲F:'可能更接近OP想要什麼。但是,我們仍然需要更多的澄清。 –