Python将汉字数字转换成阿拉伯数字的方法,python阿拉伯,用Python语言来为不
Python将汉字数字转换成阿拉伯数字的方法,python阿拉伯,用Python语言来为不
用Python语言来为不同数字之间做转换之前就有介绍过,今天分享的是用Python将汉字数字转换成阿拉伯数字的方法。汉字数字就是我们的大写数字:零、壹、贰、叁、肆、伍、陆、柒、捌、玖、拾,这种只有在会计人员才会常用的数字。
Python把用汉字表示的数字转换为阿拉伯数字前,需要先用到字典形式,做个对照好方便我们查找转换。
Python将汉字数字转换成阿拉伯数字的方法,源码如下(供参考):
CN_NUM = {u'〇' : 0,u'一' : 1,u'二' : 2,u'三' : 3,u'四' : 4,u'五' : 5,u'六' : 6,u'七' : 7,u'八' : 8,u'九' : 9,u'零' : 0,u'壹' : 1,u'贰' : 2,u'叁' : 3,u'肆' : 4,u'伍' : 5,u'陆' : 6,u'柒' : 7,u'捌' : 8,u'玖' : 9,u'貮' : 2,u'两' : 2,}CN_UNIT = {u'十' : 10,u'拾' : 10,u'百' : 100,u'佰' : 100,u'千' : 1000,u'仟' : 1000,u'万' : 10000,u'萬' : 10000,u'亿' : 100000000,u'億' : 100000000,u'兆' : 1000000000000,}def cn2dig(cn): lcn = list(cn) unit = 0 #当前的单位 ldig = []#临时数组 while lcn: cndig = lcn.pop() if CN_UNIT.has_key(cndig): unit = CN_UNIT.get(cndig) if unit==10000: ldig.append('w') #标示万位 unit = 1 elif unit==100000000: ldig.append('y') #标示亿位 unit = 1 elif unit==1000000000000:#标示兆位 ldig.append('z') unit = 1 continue else: dig = CN_NUM.get(cndig) if unit: dig = dig*unit unit = 0 ldig.append(dig) if unit==10: #处理10-19的数字 ldig.append(10) ret = 0 tmp = 0 while ldig: x = ldig.pop() if x=='w': tmp *= 10000 ret += tmp tmp=0 elif x=='y': tmp *= 100000000 ret += tmp tmp=0 elif x=='z': tmp *= 1000000000000 ret += tmp tmp=0 else: tmp += x ret += tmp return ret #ldig.reverse() #print ldig #print CN_NUM[u'七']if __name__ == '__main__': test_dig = [u'九', u'十一', u'一百二十三', u'一千二百零三', u'一万一千一百零一', u'十万零三千六百零九', u'一百二十三万四千五百六十七', u'一千一百二十三万四千五百六十七', u'一亿一千一百二十三万四千五百六十七', u'一百零二亿五千零一万零一千零三十八', u'一千一百一十一亿一千一百二十三万四千五百六十七', u'一兆一千一百一十一亿一千一百二十三万四千五百六十七', ] for cn in test_dig: print cn2dig(cn)
Python数字转换相关文章推荐:
1、用Python将罗马数字转换为阿拉伯数字的方法
2、Python实现金额大小写转换的方法
编橙之家文章,
相关内容
- Python筛法求质数(素数)的生成器示例,python质数,本篇
- Python实现跨平台获取按键方法源码示例,python源码,本文
- Python计算n*n网格生成树数目的方法,python网格,Python计算
- Python实现HTML颜色和RGB颜色互转的方法,pythonrgb,本文是
- Python随机产生迷宫生成算法源码,python算法,用Python语言
- Python方法如何将普通IP转换为十进制IP,python十进制,P
- Python组合生成与数量计算的实现方法,python组合数量计
- Python实现Windows自动切换代理的方法,python自动切换,本
- Python常见排序算法实现与测速源码,python测速,Python常见
- Python统计代码行数的快捷方法,python统计行数,想知道一
评论关闭