python中用函数货币转换代码_python将人民币转换大写的脚本代码
代码如下:
def Num2MoneyFormat( change_number ):
“””
.转换数字为大写货币格式( format_word.__len__() – 3 + 2位小数 )
change_number 支持 float, int, long, string
“””
format_word = [“分”, “角”, “元”,
“拾”,”百”,”千”,”万”,
“拾”,”百”,”千”,”亿”,
“拾”,”百”,”千”,”万”,
“拾”,”百”,”千”,”兆”]
format_num = [“零”,”壹”,”贰”,”叁”,”肆”,”伍”,”陆”,”柒”,”捌”,”玖”]
if type( change_number ) == str:
# – 如果是字符串,先尝试转换成float或int.
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_word ) – 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 #标记连续0次数,以删除万字,或适时插入零字
start = len(real_numbers) – 3
change_words = []
for i in range(start, -3, -1): #使i对应实际位数,负数为角分
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_word[i+2])
elif 0 == i or (0 == i%4 and zflag 3): #控制 万/元
change_words.append(format_word[i+2])
zflag = 0
else:
zflag += 1
if change_words[-1] not in ( format_word[0], format_word[1]):
# – 最后两位非”角,分”则补”整”
change_words.append(“整”)
return ”.join(change_words)
Python 把金额小写转换成大写2
功能将小于十万亿元的小写金额转换为大写
代码如下:
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 = (nin1)
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
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 (nin1))), ”, 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)
转载请注明:seo-网站优化-网站建设 » python将人民币转换大写的脚本代码
python中用函数货币转换代码_python将人民币转换大写的脚本代码相关推荐
- python备份文件代码_python备份文件以及mysql数据库的脚本代码
#!/usr/local/python import os import time import string source=['/var/www/html/xxx1/','/var/www/html ...
- 在python中用递归的方法编程_python基础之函数,递归,内置函数
阅读目录 一 数学定义的函数与python中的函数 初中数学函数定义:一般的,在一个变化过程中,如果有两个变量x和y,并且对于x的每一个确定的值,y都有唯一确定的值与其对应,那么我们就把x称为自变量, ...
- [转载] python strptime函数转时间数组_python—时间与时间戳之间的转换
参考链接: Python strptime() 对于时间数据,如2016-05-05 20:28:54,有时需要与时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到t ...
- python货币转换编程_Python实现制度转换(货币,温度,长度)
人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中: 人民币和美元间汇率固定为:1美元 = 6.78人民币. 程序可以接受人民币或美元输入,转换为美元或人民币输出.人民币采用R ...
- python怎么保存文件代码_Python文件读写保存操作的实现代码
本篇文章给大家带来的内容是关于Python文件读写保存操作的实现代码 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 记录下第一次使用Python读写文件的过程,虽然很简单,第一次实 ...
- python中函数startswith的用法_Python中的startswith和endswith函数使用实例
在Python中有两个函数分别是startswith()函数与endswith()函数,功能都十分相似,startswith()函数判断文本是否以某个字符开始,endswith()函数判断文本是否以某 ...
- python回调函数实例详解_Python回调函数用法实例详解
本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...
- python定义函数的关键字是_python 函数定义
python 函数 ---------------- ---------------- ---------------- ---------------- def test(x): print(x) ...
- python的函数的对象属性_Python帮助函数调试函数 用于获取对象的属性及属性值...
Python帮助函数调试函数 用于获取对象的属性及属性值 刚接触Python,上篇 <Python入门>第一个Python Web程序--简单的Web服务器 中调试非常不方便,不知道对象详 ...
最新文章
- 『TensorFlow』卷积层、池化层详解
- BZOJ 2140 稳定婚姻(强联通分量判环)【BZOJ修复工程】
- 黑金花大理石_黑金花 , 经典就是经典 ! 美 !
- ccna学习笔记之五:路由器密码恢复
- 【网址收藏】rancher镜像源仓库
- JPEG原理分析及JPEG解码器的调试
- 查看表扫描次数,并对比索引对表查询的作用
- 【报错笔记】eclipse启动出现错误
- Java分布式系统高并发解决方案
- SQL 必知必会·笔记14更新和删除数据
- 刚入职新公司做一些什么贡献_如果您有全职工作,如何为Kubernetes做贡献
- 「小程序JAVA实战」微信小程序工程结构了解(五)
- 谈谈数据传输中的安全性
- springboot11 模板引擎
- 2020上海大学生网络安全赛MISC题WP
- 解决高版本MATLAB robotics toolbox在plot/teach时报错问题
- Linux查看tomcat是否启动,查看tomcat监听端口
- DexPathList在真机环境下闪退的两种解决方案。
- 乐教乐学各关的解(61-70)
- 全国计算机等级考试在线报名入口,2021年3月全国计算机等级考试NCRE报名入口ncre-bm.neea.cn...
热门文章
- 大剑无锋之TCP和UDP区别【面试推荐】
- Hadoop 02_初学必知
- leetcode 25. Reverse Nodes in k-Group | 25. K 个一组翻转链表(Java)
- 【Python日志输出】控制台输出INFO和WARNING级别,文件只记录WARNING级别
- 【BootCDN】前端使用开源免费的 CDN 加速服务
- 算法设计与分析 0-1背包问题 动态规划解法【超详细】
- C++ vector容器 find erase的使用:查找并删除指定元素
- 泛型中的模糊继承,解析T的意义
- OpenBase关于一致性,可用性,分区容错性(CAP)分析
- Effective Java之优先使用标准的异常(六十)