python对同一文件多次读写导致的PermissionError: [Errno 13] Permission denied
问题描述
今天为了用python提取word文档中的信息,写了一个程序,将多个word中的内容提取到excel中,写了一个函数,用来将数据保存到excel中,代码如下
# 打开已有的Excel文件 并在末尾追加一行新数据
# workBook = load_workbook(resultPath) #打开现有文件
booksheet = workBook.active #当前工作表
booksheet.append(list) # 在末尾追加一行新数据
# workBook.save(resultPath)
如果加上注释中的语句,在每次写入时都会对文件进行一次打开和关闭,在多次读写中就会产生PermissionError的问题。
解决方法
在开头打开文件,读写函数不再打开和关闭,只对数据进行追加,当全部读写完成后再进行保存和关闭。
代码修改:描述中的代码中注释的代码删去,在main函数最开始进行文件的打开,结尾进行文件的关闭 即只进行一次文件的打开与关闭。