使用Python2.7中的文件时(使用Spyder IDE的iPython控制台,我不确定这种行为是否适用于所有IDE)我已经注意到即使如果使用with
块,则活动python shell会将文件保持在打开状态,直到shell关闭。这种行为非常烦人,因为我不能在没有先关闭当前Python会话的情况下删除文件。有没有办法绕过这种行为?
这是我正在运行以观察此行为的代码:
if __name__=='__main__':
logger=logging.getLogger('CopasiTools')
logger.setLevel(logging.DEBUG)
log_filename=os.path.join(os.getcwd(),'fileQuestionExample.log')
handler=logging.FileHandler(log_filename,mode='w')
formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
handler.setFormatter(formatter)
logger.addHandler(handler)
logger.debug('example debug')