Python怎样实现数字转中文?教你两个方法
导读:有时候我们需要将阿拉伯数字转成对于的中文,那么这样的效果究竟要怎样做呢?对此这篇就给大家来用Python实现数字转中文,下文分享了两种转换方式,示例代码有一定的参考价值,有需要的朋友可以参考,那么接下来就跟随小编学习一下吧。本文操作环境:w...
有时候我们需要将阿拉伯数字转成对于的中文,那么这样的效果究竟要怎样做呢?对此这篇就给大家来用Python实现数字转中文,下文分享了两种转换方式,示例代码有一定的参考价值,有需要的朋友可以参考,那么接下来就跟随小编学习一下吧。
本文操作环境:windows7系统,DELL G3电脑,python3.5版
python实现将阿拉伯数字转换成中文
第一种转换方式:
1 -->
一
12 -->
一二
def num_to_char(num):
"""数字转中文"""
num=str(num)
new_str=""
num_dict={
"0":u"零","1":u"一","2":u"二","3":u"三","4":u"四","5":u"五","6":u"六","7":u"七","8":u"八","9":u"九"}
listnum=list(num)
# print(listnum)
shu=[]
for i in listnum:
# print(num_dict[i])
shu.append(num_dict[i])
new_str="".join(shu)
# print(new_str)
return new_str第二种转换方式:
1 -->
一
12 -->
十二
23 -->
二十三
_MAPPING = (u'零', u'一', u'二', u'三', u'四', u'五', u'六', u'七', u'八', u'九', u'十', u'十一', u'十二', u'十三', u'十四', u'十五', u'十六', u'十七',u'十八', u'十九')
_P0 = (u'', u'十', u'百', u'千',)
_S4 = 10 ** 4
def _to_chinese4(num):
assert (0 = num and num _S4)
if num 20:
return _MAPPING[num]
else:
lst = []
while num >
= 10:
lst.append(num % 10)
num = num / 10
lst.append(num)
c = len(lst) # 位数
result = u''
for idx, val in enumerate(lst):
val = int(val)
if val != 0:
result += _P0[idx] + _MAPPING[val]
if idx c - 1 and lst[idx + 1] == 0:
result += u'零'
return result[::-1]以上就是用Python实现数字转中文的几种方法,上述示例具有一定的借鉴价值,有需要的朋友可以了解看看,希望对大家学习Python语言有帮助,想要了解更多可以继续浏览网络其他相关的文章。
文本转载自PHP中文网
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Python怎样实现数字转中文?教你两个方法
本文地址: https://pptw.com/jishu/651297.html
