Python 中文数字转阿拉伯数字
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #只能转数字,传参中包含非数字会错. def t( str ): zhong = { '零' : 0 , '一' : 1 , '二' : 2 , '三' : 3 , '四' : 4 , '五' : 5 , '六' : 6 , '七' : 7 , '八' : 8 , '九' : 9 }; danwei = { '十' : 10 , '百' : 100 , '千' : 1000 , '万' : 10000 }; num = 0 ; if len ( str ) = = 0 : return 0 ; if len ( str ) = = 1 : if str = = '十' : return 10 ; num = zhong[ str ]; return num; temp = 0 ; if str [ 0 ] = = '十' : num = 10 ; for i in str : if i = = '零' : temp = zhong[i]; elif i = = '一' : temp = zhong[i]; elif i = = '二' : temp = zhong[i]; elif i = = '三' : temp = zhong[i]; elif i = = '四' : temp = zhong[i]; elif i = = '五' : temp = zhong[i]; elif i = = '六' : temp = zhong[i]; elif i = = '七' : temp = zhong[i]; elif i = = '八' : temp = zhong[i]; elif i = = '九' : temp = zhong[i]; if i = = '十' : temp = temp * danwei[i]; num + = temp; elif i = = '百' : temp = temp * danwei[i]; num + = temp; elif i = = '千' : temp = temp * danwei[i]; num + = temp; elif i = = '万' : temp = temp * danwei[i]; num + = temp; if str [ len ( str ) - 1 ] ! = '十' and str [ len ( str ) - 1 ] ! = '百' and str [ len ( str ) - 1 ] ! = '千' and str [ len ( str ) - 1 ] ! = '万' : num + = temp; return num; |
分类:
Python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2018-04-08 Linux:简单的并发服务器实现
2018-04-08 Linux:简单的并发服务器实现