您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:教你使用Pandas直接核算Excel中的快递费用

51自学网 2021-10-30 22:40:51
  python
这篇教程教你使用Pandas直接核算Excel中的快递费用写得很实用,希望能帮到您。

一、确定核算规则

在这里插入图片描述

二、根据核算规则编写代码,生成核算列

# -*- coding:utf-8 -*- import pandas as pd from math import ceilimport osdef account(adress,weight):        if adress == "湖南":        if weight <= 3:            totel = 2.5        elif  (weight >= 3) and (weight<=5):            totel = 3.5 + ceil((weight-3))*1        else:            totel = ceil(weight)*1        return totel                elif adress in ["河北","天津","山西","浙江","江苏","安徽","福建","山东","江西","广东","广西","河南","湖北","陕西","四川","重庆","云南","贵州"]:        if weight <= 3:            totel = 2.5        elif  (weight >= 3) and (weight<=5):            totel = 3.5 + ceil((weight-3))*1        else:            totel = ceil(weight)*2         return totel        elif adress in ["深圳","北京","上海"]:        if weight <= 3:            totel = 3.3        elif  (weight >= 3) and (weight<=5):            totel = 3.5 + ceil((weight-3))*1.5        else:            totel = ceil(weight)*2        return totel                elif adress in ["海南","辽宁","黑龙江","吉林"]:        if weight <= 3:            totel = 2.5        elif  (weight >= 3) and (weight<=5):            totel = 3.5 + ceil((weight-3))*2.5        else:            totel = ceil(weight)*3        return totel    elif adress in ["内蒙古","甘肃","宁夏","青海"]:        if  weight <= 1:            totel = 9        else:            totel = 9 + ceil(weight-1)*6         return totel    elif adress == "新疆":        if  weight <= 1:            totel = 15        else:            totel = 15 + ceil(weight-1)*12         return totel    elif adress == "西藏":        if  weight <= 1:            totel = 16        else:            totel = 15 + ceil(weight-1)*18         return totel        else:        print("你输入的省份不合法!!!")    file_path = input("请输入文件路径:")   sheet_name = input("请输入工作簿名称:")pf = pd.read_excel(file_path,sheet_name=sheet_name)#获取省份一列pro = pf["省份"].values.tolist()#获取重量一列wt = pf["重量"].values.tolist()#核算列totel = []for p,w in zip(pro,wt):    print(p,w)    totel.append(account(p,w))pf["最新核算结果"] = totelfile_name = os.path.basename(file_path)pf.to_excel(os.path.join(os.path.dirname(file_path),os.path.basename(file_path).split(".")[0]+sheet_name+"最新核算结果"+".xlsx"))

三、输入账单,进行核算。

在这里插入图片描述

在脚本文件目录中执行pyinstaller -F hesuan.py 进行打包exe文件,如果为安装pyinstaller,使用pip install pyinstaller 安装。点击运行打包后的exe文件,输入文件的路径名和sheet名,就可以进行自动核算,脚本运行完成后会自动保存一个新的Excel文件。

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

到此这篇关于教你使用Pandas直接核算Excel中快递费用的文章就介绍到这了,更多相关Pandas核算Excel中快递费用内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


用python开发一款操作MySQL的小工具
pycharm 如何查看某一函数源码的快捷键
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。