python2.x实现人民币转大写人民币


Posted in Python onJune 20, 2018

本文实例为大家分享了python实现人民币转大写人民币的具体代码,供大家参考,具体内容如下

直接上代码:

# -*- coding: utf-8 -*-
def changenum( change_number ):
 format_num = ["零","壹","贰","叁","肆","伍","陆","柒","捌","玖"]
 format_name = ["分", "角", "元",
    "拾","百","千","万",
    "拾","百","千","亿",
    "拾","百","千","万",
    "拾","百","千","兆"]

 if type( change_number ) == str:
  if '.' in change_number:
   try: change_number = float( change_number )
   except: raise ValueError, '%s can\'t change'%change_number
  else:
   try: change_number = int( change_number )
   except: raise ValueError, '%s can\'t change'%change_number

 if type( change_number ) == float:
  real_numbers = []
  for i in range( len( format_name ) - 3, -3, -1 ):
   if change_number >= 10 ** i or i < 1:
    real_numbers.append( int( round( change_number/( 10**i ), 2)%10 ) )

 elif isinstance( change_number, (int, long) ):
  real_numbers = [ int( i ) for i in str( change_number ) + '00' ]

 else:
  raise ValueError, '%s can\'t change'%change_number

 zflag = 0      
 start = len(real_numbers) - 3
 change_words = []
 for i in range(start, -3, -1): 
  if 0 <> real_numbers[start-i] or len(change_words) == 0:
   if zflag:
    change_words.append(format_num[0])
    zflag = 0
   change_words.append( format_num[ real_numbers[ start - i ] ] )
   change_words.append(format_name [i+2])

  elif 0 == i or (0 == i%4 and zflag < 3): 
   change_words.append(format_name [i+2])
   zflag = 0
  else:
   zflag += 1

 if change_words[-1] not in (format_name[0], format_name[1]):
  change_words.append("整")

 return ''.join(change_words)
#测试
# print changenum(865324.98)
#查看输出的结果是否正确

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3.0 字典key排序
Dec 24 Python
Python中的Matplotlib模块入门教程
Apr 15 Python
Python使用matplotlib绘制动画的方法
May 20 Python
Python时间模块datetime、time、calendar的使用方法
Jan 13 Python
Python文件夹与文件的相关操作(推荐)
Jul 25 Python
pandas 小数位数 精度的处理方法
Jun 09 Python
python实现KNN分类算法
Oct 16 Python
python验证码图片处理(二值化)
Nov 01 Python
Python如何获取文件指定行的内容
May 27 Python
详解Python中openpyxl模块基本用法
Feb 23 Python
pdf论文中python画的图Type 3 fonts字体不兼容的解决方案
Apr 24 Python
Python爬虫入门案例之爬取二手房源数据
Oct 16 Python
python实现猜数字小游戏
Mar 24 #Python
python实现人民币大写转换
Jun 20 #Python
python人民币小写转大写辅助工具
Jun 20 #Python
python简易远程控制单线程版
Jun 20 #Python
python通过Windows下远程控制Linux系统
Jun 20 #Python
Python实现求解一元二次方程的方法示例
Jun 20 #Python
python实现NB-IoT模块远程控制
Jun 20 #Python
You might like
php 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
2008/11/14 PHP
PHP n个不重复的随机数生成代码
2009/06/23 PHP
windows下升级PHP到5.3.3的过程及注意事项
2010/10/12 PHP
PHP setTime 设置当前时间的代码
2012/08/27 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
2014/08/04 PHP
PHP中exec函数和shell_exec函数的区别
2014/08/20 PHP
广告显示判断
2006/08/31 Javascript
在线游戏大家来找茬II
2006/09/30 Javascript
javascript[js]获取url参数的代码
2007/10/17 Javascript
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
Javascript类库的顶层对象名用户体验分析
2010/10/24 Javascript
使用js实现雪花飘落效果
2013/08/26 Javascript
使用npm发布Node.JS程序包教程
2015/03/02 Javascript
JavaScript获取页面中表单(form)数量的方法
2015/04/03 Javascript
JavaScript汉诺塔问题解决方法
2015/04/21 Javascript
JavaScript实现瀑布流布局
2020/06/28 Javascript
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
JS中多种方式创建对象详解
2016/03/22 Javascript
jquery实现左右轮播图效果
2017/09/28 jQuery
layui.tree组件的使用以及搜索节点功能的实现
2019/09/26 Javascript
有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案
2020/05/09 Javascript
vue-router重写push方法,解决相同路径跳转报错问题
2020/08/07 Javascript
JavaScript WeakMap使用详解
2021/02/05 Javascript
Python聚类算法之DBSACN实例分析
2015/11/20 Python
python判断完全平方数的方法
2018/11/13 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
使用python制作一个为hex文件增加版本号的脚本实例
2019/06/12 Python
python读取Kafka实例
2019/12/23 Python
IDLE下Python文件编辑和运行操作
2020/04/25 Python
Django haystack实现全文搜索代码示例
2020/11/28 Python
阿里巴巴美国:Alibaba美国
2019/11/24 全球购物
演讲稿怎么写
2014/01/07 职场文书
运动会方阵解说词
2014/02/12 职场文书
园林系毕业生求职信
2014/06/23 职场文书
原料仓管员岗位职责
2015/04/01 职场文书
战马观后感
2015/06/08 职场文书