一种更pythonic的方式是:
try: os.remove(filename)except OSError: pass
尽管这花费了更多的行并且看起来很丑陋,但是它避免了不必要的调用
os.path.exists()并遵循过度使用异常的python约定。
可能值得编写一个函数为您执行此操作:
import os, errnodef silentremove(filename): try: os.remove(filename) except OSError as e: # this would be "except OSError, e:" before Python 2.6 if e.errno != errno.ENOENT: # errno.ENOENT = no such file or directory raise # re-raise exception if a different error occurred



