大家好,我是皮皮。
一、前言
前几天在Python白银交流群【FN】问了一个Python处理Excel文件的问题,提问截图如下:
其实说白了,她是想要把xls文件转换成xlsx文件。
方便后面的数据处理。
下面是她自己写的代码。
from docxtpl import DocxTemplate
from openpyxl import load_workbook
import os
def replace(obj):
if obj is None:
obj = ''
return obj
# 加载要填入的数据
wb = load_workbook(r"D:\用户目录\Desktop\DCC运费\222.xlsx")
ws = wb['Sheet1']
contexts = []
for row in range(2, ws.max_row + 1):
name = ws["D" + str(row)].value
dcc = ws["O" + str(row)].value
dcc = str(dcc).split('.')[0] + '.' + str(dcc).split('.')[1][:2]
context = {"name": name, "dcc": dcc}
contexts.append(context)
contexts
os.mkdir("./运费")
for context in contexts:
print(context)
tpl = DocxTemplate(r"D:\用户目录\Desktop\DCC运费\运费计算说明.docx")
tpl.render(context)
tpl.save("./运费/DCC运费{}.docx".format(context["name"]))
二、实现过程
这里【瑜亮老师】给了一个代码,使用Pandas两行代码搞定。
import pandas as pd
df = pd.read_excel('test9-11.xls', header=None)
df.to_excel('test9-11.xlsx', index=False, header=None)
后来【此类生物】还提供了一个思路,使用xlrd库进行实现。
不过后面在运行的时候发现还是一大堆问题,后来才发现是导出的文件问题,代码还是没啥问题的。
三、总结
大家好,我是皮皮。这篇文章主要盘点了一个Python基础的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。