import pandas as pd
df=pd.read_excel("d:\\test.xlsx")
fklist=[]
mtlist=["AD-DDC-CP"+str(i) for i in range(15)]
print(mtlist)
fklen=len(mtlist)
dd=pd.DataFrame({"工艺路径编码":[],"工序名称":[],"物料编码":[]})
proceepath=[mtcode+'-ZZ' for mtcode in mtlist]
dd['工艺路径编码']=proceepath
dd['工序名称']='总装工序'
dd['物料编码']=mtlist
# 工序数据初始话
gxdf=pd.DataFrame({"工序编码":[],"工序号":[],"工艺路径编码":[]})
#单工序
#porcesscode=[mtcode+'-10' for mtcode in mtlist]
gxnum=['10','20']
#推导式生成多工序
duogongxu=[gx for i in range(fklen) for gx in gxnum]
#多工序编码
porcesscode=[mtlist[i]+"-"+gx for i in range(fklen) for gx in gxnum]
print(duogongxu)
print(porcesscode)
gxdf['工序编码']=porcesscode
gxdf['工艺路径编码']=[mt for mt in mtlist for gx in gxnum]
print(gxdf)
#创建使用指令
gxusedf=pd.DataFrame()
gxusedf['工序编码']=porcesscode
gxusedf['使用指令编码']=[pp+'-U1' for pp in proceepath for gx in gxnum]
gxusedf['使用量']=1
# 创建一个Excel写入器,这里用的是openpyxl引擎
with pd.ExcelWriter('d:\\output.xlsx', engine='openpyxl') as writer:
# 检查是否存在指定的sheet,如果不存在则创建一个
if 'Sheet1' not in writer.book.sheetnames:
writer.book.create_sheet('工艺路径')
# 将DataFrame写入到指定的sheet中,如果不存在则会自动创建
worksheet = writer.sheets['工艺路径']
worksheet.column_dimensions['A'].width = 15 # 'A'代表第一列,以此类推'B', 'C'等
worksheet.column_dimensions['B'].width = 15 # 设置第二列的宽度为10个字符宽
worksheet.column_dimensions['C'].width = 25 # 设置第三列的宽度为20个字符宽
dd.to_excel(writer, sheet_name='工艺路径', index=False)
gxdf.to_excel(writer, sheet_name='工序', index=False)
gxusedf.to_excel(writer, sheet_name='工序使用命令', index=False)