玩蛇网提供最新Python编程技术信息以及Python资源下载!
您现在的位置: 玩蛇网首页 > Python源码实例_Python程序源代码_网站项目下载 > 正文内容

Python实现金额大小写转换的方法

Python入门佳作 经典教程的全新修订 10个项目引人入胜
玩蛇网推荐图文教程:python黑客多线程扫描器

Python代码将大写汉字的零贰叁肆伍陆柒捌玖转换为小写阿拉伯数字的操作方法,python如何定义函数将人民币金额小写转换为大写

求思路,在查看Python实现金额大小写转换的方法的源代码前,可以先看看玩蛇网其它关于数字转换的文章,例如Python阿拉伯数字转换为罗马数字的方法Python罗马数字转换为阿拉伯数字的方法;了解了这两种文字之间的转换思路,想必你就会知道金额大小写转换方法的python代码要如何编写了。

def IIf( b, s1, s2):
  if b:
    return s1
  else:
    return s2
def num2chn(nin=None):
    cs =
('零','壹','贰','叁','肆','伍','陆','柒','捌','玖','◇','分','角','圆','拾','佰','仟',
'万','拾','佰','仟','亿','拾','佰','仟','万')
    
        st = ''; st1=''
    s = '%0.2f' % (nin)    
    sln =len(s)
    
        if sln >; 15: return None
    
        fg = (nin<1)
    
        for i in range(0, sln-3):
        ns = ord(s[sln-i-4]) - ord('0')
        st=IIf((ns==0)and(fg or (i==8)or(i==4)or(i==0)), '', cs[ns])
      + IIf((ns==0)and((i<>;8)and(i<>;4)and(i<>;0)or fg
and(i==0)),'', cs[i+13])
      + st
        fg = (ns==0)
    
        fg = False

#www.iplaypython.com    

        for i in [1,2]:
        ns = ord(s[sln-i]) - ord('0')
        st1 = IIf((ns==0)and((i==1)or(i==2)and(fg or (nin<1))), '', cs[ns])
       + IIf((ns>;0), cs[i+10], IIf((i==2) or fg, '', '整'))
       + st1
        fg = (ns==0)

    st.replace('亿万','万')

    return IIf( nin==0, '零', st + st1)

if __name__ == '__main__':
  num = 12340.1

  print num

  print num2chn(num)

玩蛇网文章,转载请注明出处和来源网址:http://www.iplaypython.com/code/c2671.html



微信公众号搜索"玩蛇网Python之家"加关注,每日最新的Python资讯、图文视频教程可以让你一手全掌握。强烈推荐关注!

微信扫描下图可直接关注

玩蛇网PythonQQ群,欢迎加入: ① 240764603 玩蛇网Python新手群
出炉日期:2015-12-23 19:38 玩蛇网 www.iplaypython.com

我要分享到:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules