Python编程案例:中文金额转换并计算
平时的工作、生活中经常遇到金额是中文大写的表达方式,那么就无法直接进行计算和统计。这样就需要将中文大写的金额转换为小写的阿拉伯数字,来计算总额,并将计算结果输出。实现这个功能需要用到rmbTrans模块。
运行环境:
OS:macOS Monterey Version 12.3.1
IDE:PyCharm 2020.1
首先需要安装rmbTrans模块,在命令行输入如下命令:
(venv) (base) liuxiaowei@MacBookAir % pip install rmbTrans
备注:如果安装不成功可以添加如下参数(清华的国内镜像)
pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple/
中文金额数据如下表:
对表中的总金额进行转换计算,源码如下:
#_*_coding:utf-8_*_
# 作者 :liuxiaowei
# 创建时间 :4/8/22 10:07 PM
# 文件 :中文金额计算.py
# IDE :PyCharm
import os
import openpyxl
# 导入人民币转换模块
import rmbTrans
# 工作目录赋值给workPath
workPath = '/Users/liuxiaowei/amount_covert'
# 指定workPath为当前工作目录
os.chdir(workPath)
# 读取工作簿
wb = openpyxl.load_workbook(os.listdir()[0])
# 六月采购总金额
cg_Amount = 0
# 读取表中到数据
for rowData in wb['6月供货'].rows:
# 读取第5列6列7列数据
if rowData[4].value == '货物名称' or rowData[5].value == '总税额' or rowData[6].value == '总金额':
continue
price1 = rmbTrans.trans(rowData[4].value)
price2 = rmbTrans.trans(rowData[5].value)
price3 = rmbTrans.trans(rowData[6].value)
cg_Amount += price3
print(f'{rowData[3].value}的商品总价:{price1}元,总税额:{price2}元,总金额:{price3}元')
print(f'六月份采购总金额{cg_Amount}元')
运行结果如下:
开口哭牌芹菜味薯片的商品总价:3600元,总税额:612元,总金额:4212元
开口哭牌榴莲味薯片的商品总价:3600元,总税额:612.55元,总金额:4212.55元
开口哭牌猕猴桃味薯片的商品总价:3600元,总税额:612元,总金额:4212元
开口哭牌猕猴桃味口香糖的商品总价:3500元,总税额:595元,总金额:4095元
开口哭牌麻辣味口香糖的商品总价:3900元,总税额:663元,总金额:4563元
开口哭牌蟹黄味口香糖的商品总价:3500元,总税额:595.0699999999999元,总金额:4095.07元
开口哭牌没有一点味口香糖的商品总价:3500元,总税额:595元,总金额:4095元
开口哭牌榴莲味口香糖的商品总价:1000元,总税额:170元,总金额:1170元
开口哭牌没有一点味薯片的商品总价:1200元,总税额:204元,总金额:1404元
六月份采购总金额52065.62元