from xlutils.copy import copy 解決:導致Excel文件打不開(Excel無法打開文件,因爲文件格式或文件擴展名無效,請確定文件未損壞,並且文件擴展名與文件的格式匹配)

使用python的xlutils.copy模塊,進行文件數據寫入,保存之後打不開

Excel文件後綴是xlsx,進行操作之後,打不開文件;(解決:把後綴xlsx改成xls就可以打開;或者文件一開始的後綴就是xls

import xlrd
from xlutils.copy import copy

file = 'D:/hunter_/demo3.xlsx'  # 文件路徑
data = xlrd.open_workbook(file)  # 定義一個excel文件的workbook對象
print('data的類型爲:', type(data))
data_copy = copy(data)  # 獲取data的copy對象
print('data的copy對象類型爲:', type(data_copy))
sheet_copy = data_copy.get_sheet(0)  # 從data_copy對象中獲取第一個sheet對象

sheet_copy.write(2, 11, '測試寫入內容')  # 向sheet的某個單元格寫入值
data_copy.save('demo3.xlsx')  # 寫入完成後保存data的copy對象

 

 改成xls文件能正常打開

 

 

 

 

 

注意:

xlrd模塊0.8版本後不支持以xlsx爲後綴名文件,所以使用這個方法的時候,excel要用xls格式的,不然會導致保存的文件無法打開

xlutils最新的2.0版本只能支持copy xls格式的excel文件,如果copy的是xlsx再保存,那麼新生成的文件將無法打開。

原文出處:https://www.cnblogs.com/hemingwei/p/11585799.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章