目前我有一些代码删除了我的程序创建的一些临时文件:
# Delete the generated files
exts = [".lsys", ".py", ".pyc"]
for ext in exts:
os.remove("{0}{1}{2}".format(self.grammarDir, filename, ext))
现在我正在尝试将应用程序移植到Mac。查看Python 2.7的documentation,它具体说:
删除(删除)文件路径。如果path是目录,则OSError为 提高;请参阅下面的rmdir()以删除目录。这与之相同 unlink()函数记录如下。在Windows上,尝试 删除正在使用的文件会导致引发异常;上 Unix,目录条目被删除但存储分配给了 在原始文件不再存在之前,文件不可用 使用
Availability: Unix, Windows.
是否有相当于Mac的os.remove()
或者我是否坚持使用此类内容?
os.system("rm {0}{1}{2}".format(self.grammarDir, filename, ext))
我需要与Mac兼容,并且保持与Ubuntu的兼容性将是一个巨大的好处(但并非绝对必要)。
修改
嗯,现在我感到愚蠢。事实证明我在这段代码之上有一个破碎的调用,因此没有达到删除代码。错误地误解了我的错误,认为它是默默地失败。答案 0 :(得分:6)
Mac OS X也是Unix。从链接documentation的顶部开始:
如果没有另行说明,所有声称“可用性:Unix”的功能 在Mac OS X上受支持,它建立在Unix核心之上。
答案 1 :(得分:4)
此上下文中的Unix也意味着Mac和Linux。可以说是所有可以构建Python的Unix-like / POSIX兼容系统。
答案 2 :(得分:3)
os.remove
可在Windows和Unix上使用。 Max OSX计为Unix,因此您可以在Mac OSX上使用os.remove
。
来自您关联的documentation:
如果没有另行说明,Mac OS X支持声称“可用性:Unix”的所有功能,它们构建在Unix核心上。