使用变量的值创建文件名

时间:2019-01-11 03:48:41

标签: python variables filenames

我正在尝试创建变量的文件名,这比我意识到的要难!

我想使用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

2 个答案:

答案 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()作为文件名来摆脱尾随的换行符