問題:
xlwt創建一個新的excel文件,然后添加sheet,寫入數據;我需要向已經有數據的excel文件中追加數據;
解決辦法:
再百度上找到一個思路:
1:打開已經存在的.xls文件
2:copy一份已經存在.xls的文件
3:向文件中寫入數據
4:刪除之前的文件
5:保存一份相同的文件
文件內容大致如下,提示copy不存在
之后搜索一份有用的博客,http://www.crifan.com/python_append_new_data_into_existing_excel_xls_file/;原理還需要安裝一個包:xlutils;
下載xlutils,安裝,修改py;文件內容如下:
執行成功;確認excel文件內容確實被修改:
總結:
往已經存在的xls文件中,寫入新的行,新的數據,對應的邏輯為:
1:用xlrd.open_workbook打開已有的xsl文件
2:然后用,from xlutils.copy import copy;,之后的copy去從打開的xlrd的Book變量中,拷貝出一份,成為新的xlwt的Workbook變量
3:然后對於xlwt的Workbook變量,就是正常的:
通過get_sheet去獲得對應的sheet
拿到sheet變量后,就可以往sheet中寫入新的數據
4:寫完新數據后,最終save保存