人民币金额大写转小写
将大写的金额转换成小写
对:“壹佰零壹亿叁仟零叁拾万零陆佰零陆元玖角玖分”
按”亿”,”万”,”元”进行切分
得到 [‘壹佰零壹’, ‘叁仟零叁拾’, ‘零陆佰零陆’, ‘玖角玖分’]
对list中每一个串进行转换然后乘以它的进制
最后累加
import re
money_dict={ "壹":1, "贰":2,"叁":3, "肆":4,"伍":5,"陆":6,"柒":7,"捌":8,"玖":9,"分":0.01,"角":0.1,"元":1,"拾":10,"佰":100,"仟":1000,"万":10000,"亿":100000000,
}
format_num = ["壹","贰","叁","肆","伍","陆","柒","捌","玖"]
format_hex = ["分","角","元","拾","佰","仟"]
format_d=["亿","万","元"]
def parse(str):memory = 0total = 0if len(str)==1:total=money_dict.get(str)else:for index, s in enumerate(str):num = money_dict.get(s)if s in format_num:memory = numif index ==len(str)-1:total = total + memoryelif s in format_hex:memory = memory * numtotal = total + memoryreturn total# def p_str(str):
# x = 0
# while str.find("零", x) != -1:
# b = str.find("零", x)
# x = b + 2
# str = str[:b] + str[b + 1] + "零" + str[b + 2:]
# return strdef p_data(str):list_d = re.split("[亿万元]", str)resu_num = 0for d in format_d:if d in str:list_d, resu_num = p_compute(list_d, resu_num, d)if list_d[0] == "整":return resu_numelse:num = parse(list_d[0])resu_num = resu_num + numreturn resu_numdef p_compute(list_d,resu_num,hex):num = parse(list_d[0])resu_num = resu_num + num * money_dict.get(hex)list_d = list_d[1:]return list_d,resu_numif __name__ == '__main__':str="叁拾万零玖拾元玖分"#str=p_str(str)print(str)print(p_data(str))#parse(str)
求一个简单易用的demo。。。
人民币金额大写转小写相关推荐
- python实现人民币金额大写转小写数字
支持万亿以内的转换,如果你有超出这个范围的钱,给我亿点点,求你了! import redef aoligeiganle(amount):chinese_num = {'零': 0, '壹': 1, ' ...
- 人民币大写转小写,及人民币格式判断
第一种方式 package com.sinux.qunz.utils; import java.io.Serializable; import java.util.regex.Matcher; imp ...
- C# 金额大写转小写
using System;namespace OCRTest {/// <summary>/// C#金额大写转小写/// </summary>public static cl ...
- 人民币金额大写转数字
请实现函数,把我们日常使用的大写的人民币金额(汉字表示的人民币)转化为数字, 不考虑角分, 只精确到圆 ( 整 ) , 注:该函数将被运行 1 0 0 万次,请考虑效率 2. 请用简洁的文字描述算 ...
- 数字转人民币金额大写
代码如下: 基于 (1条消息) python人民币金额转汉字大写_Glen_Zou的博客-CSDN博客_python人民币转大写 做了一些Debug 如果有什么漏掉的错误情况,请评论给我~ #!/bi ...
- 定额发票金额_金额大写转小写
定额发票,大写转小写 1 初衷 工作中遇到一个问题,需要将金额的大写转换成小写,即壹元 to 1,且,金额的面值可以穷尽:壹元.贰元.伍元.拾元.贰拾元.伍拾元.壹佰元.所以我使用map<大写金 ...
- 人民币大写转换小写数字金额 ts/es6
/* 这里的金额 只到千万 不含亿元转换 */ /** 如果有亿元 算法和以下一样 加几步就是 */ /**想法: 把金额拆分三个数组分别计算 1. 以万结束为一个2. 以元结束为一个3. 小数 角分 ...
- 马程序员学习笔记——人民币金额大写转换
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 需求:金额转换,阿拉伯数字的金额转换成中国传统 ...
- 人民币 小写金额转换为大写金额
人民币 小写金额转换为大写金额 标签(空格分隔): 人民币 小写金额转换为大写金额 jsp: div class="form-group"> <label class= ...
- js正则表达式之人民币匹配
人民币格式匹配 小写格式:¥ 符号 和 整数值 与小数3部分组成. (0)代码与运行结果 {// 匹配人民币let [reg, info, rmb, result] = [/^(¥)(-?[0-9,] ...
最新文章
- Google提出移动端新SOTA模型MixNets:用混合深度卷积核提升精度
- 逆序对(树状数组解决)
- JZOJ 5453. 【NOIP2017提高A组冲刺11.5】好路线
- java ora 00911_ORA-00911错误
- Java:14 个 Spring MVC 顶级技巧,随时用随时爽,一直用一直爽
- mysql proxy 悲观锁_mysql悲观锁总结和实践
- 17.3.12---urlparse模块的URL下载
- oracle asm 分布式存储,分布式数据中心数据库和存储部署解决方案
- Win10提示不是有效的字体文件怎么解决
- DayPilot——10分钟内用于ASP.NET MVC的AJAX每月事件日历
- 互联网始于 50 年前的 3420 室
- C++中用TinyXML对XML文件进行解析
- QPSK调制解调原理(IQ调制)
- linux数据库安装
- std::set用法
- proteus教程——DAC0832输出连续锯齿波
- 计算机考研专业课考c语言的大学,【择校必看】十三所计算机专业课只考数据结构的985院校!...
- 概率论的基本概念、样本空间、随机事件(二)
- 如何看待测试过程中的漏测发生
- matlab画图线型、符号、颜色
热门文章
- OFDM子载波频率 知乎_频谱中射频干扰信号流化、分析与回放
- 灰度到伪彩色的转换公式
- 汉字编码对照表(gb2312/unicode/utf8)
- 图像的灰度化和二值化
- CentOS7 (精简操作指令)
- 安信可A9G二次开发的准备工作
- MATLAB如何导出高分辨率的模型图片、PDF
- Tbase 源码 (五)
- matlab单枝节匹配器,第八讲微带匹配电路单枝节匹配电路.ppt
- 计算机软件质测试标准,软件产品质量要求和测试细则 ——GB/T 25000.51—2016标准实施指南...