当前位置 : 主页 > 网络编程 > 其它编程 >

[Python]按原格式写excel、xlsx,使用openpyxl

来源:互联网 收集:自由互联 发布时间:2023-07-02
Pandas处理excel确实很方便但是让人头疼的就是如何保存数据的格式。我的办法是直接读一个已经做好格式的xlsx文件然后通过openpyxl将数 Pandas 处理 excel 确实很方便但是让人头疼的就是如何
Pandas处理excel确实很方便但是让人头疼的就是如何保存数据的格式。我的办法是直接读一个已经做好格式的xlsx文件然后通过openpyxl将数

Pandas 处理 excel 确实很方便但是让人头疼的就是如何保存数据的格式。我的办法是直接读一个已经做好格式的xlsx文件然后通过openpyxl将数据写入因为openpyxl能够读取excel的格式。

if __name__ __main__:in_file input/xxx表.xlsxex ExcelHandler(in_file)ex.save_to_cell(Sheet1, 2, 5, 百度一下)# 保存数据到单元格ex.save_hyperlink(Sheet1, 2, 5, http://www.baidu.com)# 保存超链接ex.save_to_excel(ouput/xxx.xlsx)# 原格式保存excel

import os, openpyxlclass ExcelHandler:def __init__(self, excel_path):self.excel_path excel_pathself.wb openpyxl.load_workbook(excel_path)def save_hyperlink(self, sheet_name, column, row, url):print(sheet_name, column, row, url)try:sheet self.wb[sheet_name]try:sheet.cell(rowrow, columncolumn).hyperlink urlexcept ValueError:print("存储失败请检查数据项对应的表格行列是否正确")except KeyError:print("未在表格内找到对应的存储Sheet请检查表格")def save_to_cell(self, sheet_name, column, row, value):print(sheet_name, column, row, value)try:sheet self.wb[sheet_name]try:sheet.cell(rowrow, columncolumn, valuevalue)except ValueError:print("存储失败请检查数据项对应的表格行列是否正确")except KeyError:print("未在表格内找到对应的存储Sheet请检查表格")def save_to_excel(self, output_path):try:self.wb.save(output_path)except PermissionError as error:print(error)print(" [权限错误存储失败请检测是否关闭文件!!!] ")except OSError as error:print(error)print(" [存储失败请检查文件格式!!!] ")else:print(" [所有数据存储至EXCEL表格已完成] ")print(os.path.abspath(output_path))

网友评论