最近干采购,每个月要对供应商的对账单,对对应的采购订单号和物料编号的价格和数量,是不是和物料管控总表里面的价格数量是不是一致,于是写了一个代码。
从总表里面找到,对账单里对应采购订单和物料编码的数据,调出来,再对比是否数量和价格一致。
代码如下:
- 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电脑的路径就解决了。