我是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")
但这不起作用.
有任何想法吗?
解决方法:
差不多了!使用[]进行分配,返回一个列表:
minLength = 5000
minBF = 10
resfile = open("simple" + str(minLength) + str(minBF) + ".csv","w")
resfile.close()
此外,您在“.csv”周围没有任何引号.
但是,将字符串直接构造到函数的参数(如open)中的问题在于它是一个调试的猪.您可能会发现使用变量首先存储文件名更容易:
filename = "simple" + str(minLength) + str(minBF) + ".csv"
resfile = open(filename,"w")
现在,您可以尝试使用其他方法构建字符串,而无需一直使用和str(),例如:
filename = "simple%d%d.csv" % (minLength,minBF)
print filename
标签:python,string,csv,output,filenames
来源: https://codeday.me/bug/20190723/1510271.html