数字转为人民币大写汉字输出(大力看了都喊nb的详细教程) |
您所在的位置:网站首页 › 12345大写的汉字怎么写 › 数字转为人民币大写汉字输出(大力看了都喊nb的详细教程) |
将用户输入的数字转为人民币大写汉字输出。(壹贰叁肆伍陆柒捌玖拾亿万佰千零圆)
我们的目的是将一个数字转换成为我们所读出来的汉语写法,类似于银行中用到的转换,比较适合python的初学者来练习
首先我们应该知道读出来时候包括数字所对应的汉字还有单位所对应的汉字 像数字这样的汉字转换我们可以保存在字典当中进行索引转换,但是单位就比较麻烦了,我们先来看一个简单的例子: 数字:123456789元 读作:壹亿贰千叁百肆拾伍万陆千柒百捌拾玖元 由此我们可以观察推理出来单位的规律由低位依次是:元拾佰仟万拾佰仟亿拾佰仟万拾佰仟(此处请细品) 所有编程题目都一样,在分析清楚之后我们才可以开始动手写 #字典存放数字转换,元组存放单位转换 ch_number={1:"壹",2:"贰",3:"叁",4:"肆",5:"伍",6:"陆",7:"柒",8:"捌",9:"玖",0:"零"} ch_unit=("元","拾","佰","仟","万","拾","佰","仟","亿","拾","佰","仟","万","拾","佰","仟") #建议大家写python时候对输入的初始值不要直接处理,尽量保留初始值 n=input("请输入需要转换的钱数:") #判断输入是否正确,如果错误给出提示信息并且等待输入 while int(n)=18 and ch[k-16]=="y" and ch[k-14]=="y" and ch[k-12]=="y": ch[k-9]="x"原来是比较混乱的,我加了一些注释之后应该就可以看的清了 为什么替换单位时要除了元,万,亿其他都换呢? 因为元,万,亿是基础单位,不可省略的(大篇幅“0”除外–如1000000001),其他单位是根据当前数位上数字是不是零而决定的它是否存在的 看完大佬写的代码之后,很难吗? 并不难,但是我(你)为什么写不出来呢? 还是因为平时写的太少了,写的时候没有慢慢去分析,所以继续努力吧少年!! 如果你看完还有什么问题可以私我,我们可以一起来探讨一下! 新手勿喷,谢谢 最后完整的代码在下面 #字典存放数字转换,元组存放单位转换 ch_number={1:"壹",2:"贰",3:"叁",4:"肆",5:"伍",6:"陆",7:"柒",8:"捌",9:"玖",0:"零"} ch_unit=("元","拾","佰","仟","万","拾","佰","仟","亿","拾","佰","仟","万","拾","佰","仟") #建议大家写python时候对输入的初始值不要直接处理,尽量保留初始值 n=input("请输入需要转换的钱数:") #判断输入是否正确,如果错误给出提示信息并且等待输入 while int(n)=18 and ch[k-16]=="y" and ch[k-14]=="y" and ch[k-12]=="y": ch[k-9]="x" #最后还需要初始化一个字符串类型来存放我们要输出的形式 sh="" i=0 for i in range(i,len(ch)): if ch[i]!="x" and ch[i]!="y": sh=sh+ch[i] print(sh)最后输出结果如下: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |