在Python中,可以使用多个库来转换Excel表格,例如`pandas`、`openpyxl`和`Spire.XLS`等。以下是一些示例代码片段,展示如何使用这些库进行Excel文件转换:
使用`pandas`将Excel转换为CSV
import pandas as pd
读取Excel文件
excel_data = pd.read_excel('example.xlsx')
将Excel数据转换为CSV格式
excel_data.to_csv('example.csv', index=False)
使用`Spire.XLS`进行XLSX和XLS格式转换
from spire.xls import *
from spire.xls.common import *
加载XLSX文件
workbook = Workbook()
workbook.LoadFromFile('example.xlsx')
将XLSX文件另存为XLS格式
workbook.SaveToFile('Xlsx转Xls.xls', ExcelVersion.Version97to2003)
workbook.Dispose()
加载XLS文件
workbook = Workbook()
workbook.LoadFromFile('Xlsx转Xls.xls')
将XLS文件另存为XLSX格式
workbook.SaveToFile('Xls转Xlsx.xlsx')
workbook.Dispose()
使用`openpyxl`创建Excel文件并写入数据
import openpyxl
创建一个Excel文件对象
workbook = openpyxl.Workbook()
获取活动工作表
worksheet = workbook.active
worksheet.title = 'Sheet1'
要写入的Python列表
list1 = ['麦当', 'dcpeng', '月神', '王子', '冯诚', '亮哥', '沈复']
将列表写入到Excel的第一列中
for i in range(len(list1)):
worksheet.cell(i+1, 1, list1[i])
保存Excel文件
workbook.save('output_openpyxl.xlsx')
使用`pywin32`将Office文件转换为PDF
import os
from win32com.client import Dispatch, constants, gencache, DispatchEx
class PDFConverter:
def __init__(self, pathname, export='.'):
self._handle_postfix = ['doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx']
self._filename_list = list()
self._export_folder = os.path.join(os.path.abspath('.'), 'pdfconver')
if not os.path.exists(self._export_folder):
os.mkdir(self._export_folder)
self._enumerate_filename(pathname)
def _enumerate_filename(self, pathname):
for filename in os.listdir(pathname):
if any(filename.endswith(suffix) for suffix in self._handle_postfix):
self._filename_list.append(os.path.join(pathname, filename))
def convert_to_pdf(self):
for filename in self._filename_list:
excel_file = Dispatch('Excel.Application')
excel_file.Visible = True
workbook = excel_file.Workbooks.Open(filename)
for sheet_name in workbook.SheetNames:
worksheet = workbook.Sheets(sheet_name)
html_path = os.path.join(self._export_folder, f'{sheet_name}.html')
worksheet.SaveAs(html_path, FileFormat=constants.xlTypeHTML)
workbook.Close()
excel_file.Quit()
使用示例
pdf_converter = PDFConverter('path_to_excel_files')
pdf_converter.convert_to_pdf()
以上代码展示了如何使用不同的Python库进行Excel文件的转换。请根据您的具体需求选择合适的库和转换方法。