2017-06-16 77 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想要什么。但是,我们仍然需要更多的澄清。 –