我需要创建一个文本文件,用于存储用户给出的一组问题的答案。此文件需要具有唯一的案例编号作为其文件名。下面的代码确实除了文件不是文本文件之外,它的文件类型只是说“文件”。
文件需要将rnumber文件的内容作为其文件名。这非常重要。
有谁知道如何做到这一点?
def casenumberallocator(filename, answers, typeofdevice):
os.chdir("H:\V4 Program\Questions")
availablecasenumber = "not found"
while availablecasenumber == "not found":
rnumber = random.randint(1, 100)
if rnumber in randomnumberlog:
one = 1
else:
availablecasenumber = "found"
randomnumberlog.append(rnumber)
case = dict()
case[rnumber] = {"Case number": rnumber,
"Device": typeofdevice,
filename: answers}
casestring = ''.join('{}{}'.format(key, val) for key, val in case[rnumber].items())
os.chdir("H:\V4 Program\Case_files")
with open(str(rnumber), "w") as file:
#I have also tried str(rnumber).txt, and str(rnumber)".txt" but neither works.
file.write(casestring)
os.chdir("H:\V4 Program")
答案 0 :(得分:0)
你必须"连接" ...
open('"'+str(rnumber)+'.txt"', "w")
......我想......
答案 1 :(得分:0)
感谢Stefano,你的答案略有编辑版本。
open(str(rnumber)+'.txt'
答案 2 :(得分:0)
您还可以使用字符串插值,在插入之前自动将值转换为字符串。
"{}.txt".format(rnumber)
或者
"{}.{}".format(rnumber, "txt")