无法创建新文件(Python)
问题描述:
我创建了一个小函数来记录任何错误到一个新文件,但是当我不应该出错时,我得到了错误。我搜索了周围,所有这个问题的答案使用我现在使用的相同的方法,但是我收到错误。无法创建新文件(Python)
with open(f'Z:/FTP/errors/error-{get_timestamp(False)}.txt', 'w+') as f:
f.write(str(e))
以上是我的代码以下是我收到的错误(截断):
File "Main.py", line 42, in log_error
with open(f'Z:/FTP/errors/error-{get_timestamp(False)}.txt', 'w+') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'Z:/FTP/errors/error-2017-10-14T19:08:07.577362.txt'
到底哪里出问题了?我太盲目了,看不到我犯的一个错误吗?
答
您需要创建的“错误”的文件夹,你写入文件之前:
import os
os.makedirs(f'Z:/FTP/errors')
+0
该目录存在。应该将它包含在代码中,但如果该目录不存在,则创建该目录(另外,我可以在我的文件资源管理器中看到该目录)。 – Spedwards
答
检查是否有写入权限的文件夹。
路径是否存在? IIRC它只会尝试创建文件,如果它不存在,不是目录。 – Mark
问题很可能是Windows不允许以文件或目录名称存在冒号。你的时间戳有冒号。 – Mark
啊......地狱......谢谢@马克。我总是忘记那愚蠢的规则。 – Spedwards