为什么Python不关闭文件直到当前的Python会话关闭?

时间:2016-07-16 09:34:46

标签: python file

使用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')

0 个答案:

没有答案