使用python模块 将中文大写汉字转化成阿拉伯数字 |
您所在的位置:网站首页 › python将数字转化为中文大写 › 使用python模块 将中文大写汉字转化成阿拉伯数字 |
模块: rmbTrans 作用: 将输入的中文大写转换成阿拉伯数字 模块前三个字母 rmb(人民币)专门处理人民币的转换 import rmbTrans num=‘壹万叁仟贰分’ print(rmbTrans.trans(num)) 输出为13000.02 第二种 写一个金额转换函数,用来实现大写汉字金额到小写阿拉伯数字的转换。简单起见,汉字用一、二、三、四、五、六、七、八、九、十、万、千、百、元、角、分、整来表示,最大不超过千万(含千万) # list1 = [‘三万九千八百元六角五分’, ‘五千元’, ‘三万零六百元五十三元’, ‘二百零三万三千六百元’,‘二千三百五十八万七千四百二十一元’,‘五百三十二元’] def func(s): d1 = {'一':1,'二':2,'三':3,'四':4,'五':5, '六':6,'七':7,'八':8,'九':9,'零':0} cn_unit = { '分':0.01, '角':0.1, '十':10, '百':100, '千':1000, '万':10000, '十万':100000, '百万':1000000, '千万':10000000, } val = 0 n = 0 ldig = [] ten = [] index = 0 #处理万级数字 if '万' in s: index = s.index('万') for st in s[:index]: if st=='十': ten.append('0') if st=='百': ten.append('00') if st=='千': ten.append('000') s1 = d1.get(st) if s1 == None: continue ten.append(str(s1)) #将万级数字拼接起来 wan = "".join(ten) val = int(wan) * 10000 index +=1 dig = 0 for i in s[index:]: if i in d1: dig = d1.get(i) if i in cn_unit: n = cn_unit.get(i) dig = dig * n ldig.append(dig) #处理个位数上的数字 if s[-2] in d1: if s[-1]=='元': dig *= 1 ldig.append(dig) tmp = 0 for x in reversed(ldig): if x == None: continue tmp += x val += tmp return val |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |