Python编程案例:中文金额转换并计算

简介: Python编程案例:中文金额转换并计算

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/

中文金额数据如下表:
image.png

对表中的总金额进行转换计算,源码如下:

#_*_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:
    # 读取第567列数据
    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
相关文章
|
8月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1368 102
|
8月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
475 104
|
7月前
|
数据采集 监控 数据库
Python异步编程实战:爬虫案例
🌟 蒋星熠Jaxonic,代码为舟的星际旅人。从回调地狱到async/await协程天堂,亲历Python异步编程演进。分享高性能爬虫、数据库异步操作、限流监控等实战经验,助你驾驭并发,在二进制星河中谱写极客诗篇。
Python异步编程实战:爬虫案例
|
7月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
480 3
|
7月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
703 3
|
7月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
510 3
|
7月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
723 0
|
算法 Python Java
Python每日一练(20230426) 删除重复字符、颜色分类、计算圆周率
Python每日一练(20230426) 删除重复字符、颜色分类、计算圆周率
233 0
Python每日一练(20230426) 删除重复字符、颜色分类、计算圆周率
|
Python
Python计算圆周率
Python计算圆周率
331 0
鬼才!用Python计算圆周率 π
鬼才!用Python计算圆周率 π
鬼才!用Python计算圆周率 π

推荐镜像

更多