把用汉字表示的数字转换为阿拉伯数字,汉字阿拉伯,[Python]代码Py
把用汉字表示的数字转换为阿拉伯数字,汉字阿拉伯,[Python]代码Py
[Python]代码
Python语言: 把用汉字表示的数字转换为阿拉伯数字#coding=UTF-8#用途:把用汉字表示的数字转换为阿拉伯数字#用法:cn2dig(汉字数字)#作者:马踏飞燕<honeyday.mj@gmail.com>#日期:2008-07-18CN_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) #print ldig #uncomment this line to watch the middle var. 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__': #just for test test_dig = [u'九', u'十一', u'一百二十三', u'一千二百零三', u'一万一千一百零一', u'十万零三千六百零九', u'一百二十三万四千五百六十七', u'一千一百二十三万四千五百六十七', u'一亿一千一百二十三万四千五百六十七', u'一百零二亿五千零一万零一千零三十八', u'一千一百一十一亿一千一百二十三万四千五百六十七', u'一兆一千一百一十一亿一千一百二十三万四千五百六十七', ] for cn in test_dig: print cn2dig(cn)
相关内容
- python 计算时间差,时间运算代码,python时间差,Q:如何方
- python获得汉字拼音的代码,python汉字拼音,#!/usr/bin/e
- 在Python中使用linux的命名管道,pythonlinux,在Python中使用
- 在python中使用json格式文件做配置文件,,json格式小巧玲
- twisted udp 实现示例,twistedudp,from twisted
- webpy更新程序时删除pyc文件的shell脚本,webpypyc,pyc文件是
- Python连接SqlServer代码示例,pythonsqlserver,Python编程语言简
- python 解析xml示例代码,pythonxml示例代码,python有三种方
- 理解python的decorator,pythondecorator,假定有这么一个需求,
- python调用外部命令获得执行结果,python外部命令,要在
评论关闭