我正在尝试创建变量的文件名,这比我意识到的要难!
我想使用TESTNAME
变量的值作为新文件的名称。
import re
with open('output.csv', 'r') as rf:
body = rf.read()
for line in body:
newbody = body.rsplit("'")[0]
print(newbody)
SYMNAME = newbody
with open('TEST.txt', 'w') as wf:
wf.close
如果我print(TESTNAME)
的值是HISTORY
,但是如果我将其添加到wf,则会出现此错误:
[Errno 22] Invalid argument: 'HISTORY\n'
我希望通过变量将新文件命名为HISTORY.txt
。
答案 0 :(得分:0)
您可以使用以下内容打开并写入文件
with open(TESTNAME+'.txt') as wf:
wf.write("some content in your new file\n")
wf.close
不会执行任何操作,要关闭需要调用wf.close()
的文件,此处的括号很重要。另外,您实际上不需要调用wf.close()
,因为使用with ...
会自动close()
文件。
答案 1 :(得分:0)
问题是文件名中有换行符。您可以使用TESTNAME.strip()
作为文件名来摆脱尾随的换行符