我想确保所有资源都被正确清理。这是安全的事情吗:
try:
closing(open(okFilePath, "w"))
except Exception, exception:
logger.error(exception)
raise
编辑:
事实上,考虑一下,我什至需要 try/catch,因为我正在引发异常,无论如何我可以在更高级别登录。如果在创建文件时出错,可以假设没有什么可以关闭?
为确保文件在任何情况下都已关闭,您可以使用with语句。例如:
try:
with open(path_to_file, "w+") as f:
# Do whatever with f
except:
# log exception
您可以使用它来创建一个文件并在一行中关闭它。
with open(file_path, 'w') as document: pass
最简单的解决方案是:
open(fileName, 'w').close()
如果你想要一个真正的一个班轮:
os.remove("echo > YourFile")
它将在 Linux 和 Windows 上运行。
该mknod
函数创建一个新文件而不打开它
import os
import stat
os.mknod('test', 0o600 | stat.S_IFREG)
# 0o600 -> owner can read+write file, group and other have no permissions
# stat.S_IFREG -> create regular file, instead of character/block device, pipe, or other special file
警告:仅在 Unix 上可用