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 相关文章推荐
Python模拟用户登录验证
Sep 11 Python
对Python 文件夹遍历和文件查找的实例讲解
Apr 26 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
Oct 17 Python
Python文件如何引入?详解引入Python文件步骤
Dec 10 Python
python使用zip将list转为json的方法
Dec 31 Python
Python设计模式之建造者模式实例详解
Jan 17 Python
selenium python 实现基本自动化测试的示例代码
Feb 25 Python
使用python获取邮箱邮件的设置方法
Sep 20 Python
python使用html2text库实现从HTML转markdown的方法详解
Feb 21 Python
python torch.utils.data.DataLoader使用方法
Apr 02 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
May 26 Python
如何解决安装python3.6.1失败
Jul 01 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
mysql 查询指定日期时间内sql语句实现原理与代码
2012/12/16 PHP
php笔记之:AOP的应用
2013/04/24 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
PHP如何通过date() 函数格式化显示时间
2020/11/13 PHP
javascript setTimeout和setInterval计时的区别详解
2013/06/21 Javascript
javascript判断css3动画结束 css3动画结束的回调函数
2015/03/10 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
2016/12/14 Javascript
Vue.js 中的 $watch使用方法
2017/05/25 Javascript
javascript完美实现给定日期返回上月日期的方法
2017/06/15 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
JavaScript实现仿Clock ISO时钟
2018/06/29 Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
2018/11/06 Javascript
Vue3.0结合bootstrap创建多页面应用
2019/05/28 Javascript
Vue Components 数字键盘的实现
2019/09/18 Javascript
python检测服务器是否正常
2014/02/16 Python
利用Python绘制MySQL数据图实现数据可视化
2015/03/30 Python
python 读写、创建 文件的方法(必看)
2016/09/12 Python
Python中音频处理库pydub的使用教程
2017/06/07 Python
对Python3 序列解包详解
2019/02/16 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
2019/02/22 Python
Python enumerate内置库用法解析
2020/02/24 Python
解决python虚拟环境切换无效的问题
2020/04/30 Python
python如何用matplotlib创建三维图表
2021/01/26 Python
html5简单示例_动力节点Java学院整理
2017/07/07 HTML / CSS
美国一家全面的在线零售鞋类公司:SHOEBACCA
2017/01/06 全球购物
Tech21美国/加拿大:英国NO.1防摔保护壳品牌
2018/01/20 全球购物
英国100%防污和防水的靴子:Muck Boot Company
2020/09/08 全球购物
Penhaligon’s英国官网:成立于1870年的英国香水制造商
2021/02/18 全球购物
幼师自我鉴定范文
2013/10/01 职场文书
采购主管的岗位职责
2013/12/17 职场文书
《二泉映月》教学反思
2014/04/15 职场文书
2014年感恩母亲演讲稿
2014/05/27 职场文书
2015年行政助理工作总结
2015/04/30 职场文书
食品药品安全责任书
2015/05/11 职场文书
动画《朋友游戏》公开佐藤友生绘制的开播纪念绘
2022/04/06 日漫