最近干采购,每个月要对供应商的对账单,对对应的采购订单号和物料编号的价格和数量,是不是和物料管控总表里面的价格数量是不是一致,于是写了一个代码。
从总表里面找到,对账单里对应采购订单和物料编码的数据,调出来,再对比是否数量和价格一致。
代码如下:
import pandas
df1 = pandas.read_excel("C:\\Users\\Administrator\\Desktop\\物料管控表2.xlsx",sheet_name='Sheet1')df2 = pandas.read_excel("C:\\Users\\Administrator\\Desktop\\物料管控表2.xlsx",sheet_name='Sheet2')
#
merged_df = df1.merge(df2, on=['采购单号', '物料编码'], how='inner')
#
# # 排除 '采购单号' 和 '物料编码' 列为空的行
merged_df = merged_df.dropna(subset=['采购单号', '物料编码'])# 打印合并后的 DataFrame 查看结果
print(merged_df)#生成新的表格,这里注意不能和之前表格一个位置,因为会完全覆盖掉之前的数据
merged_df.to_excel("C:\\Users\\Administrator\\Desktop\\test2.xlsx", index=False, engine='openpyxl')
结果如下:
ps:过程遇到几个问题,下载的pandas2和pycharm编译器不兼容,导致一直找不到pandas,升级pandas。后面发现是有两个 python 环境, 一个自带的, 一个下载的, 每次都是升级的你下载的,把pycharm改成了我Python电脑的路径就解决了。