python将数字转化为汉字0到9,python将数字转化为汉字代码

  python将数字转化为汉字0到9,python将数字转化为汉字代码

  本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。

  1、转换思路

  (1)把整数和小数分开。

  (2)把四位数变成大写汉字。

  (3)将两个小数字转换成x角和x点。

  (4)重复一遍,把它变成人民币资本。

  2、实例

  类别编号:

  cdict={}

  gdict={}

  xdict={}

  def__init__(self):

  Self.cdict={1:u ,2:u 十,u 百,4:u 千 }

  Self.xdict={1:u 元,2:u 万,u 亿,4:u 万亿 } #数字标识符

  Self.gdict={0:u 零,1:u 一,2:u 二,u 三,43360U 四,53360U 五,63360U 地,7330

  CSplit (self,CDATA) : # split函数,将一个整数字符串拆分成一个[亿,万]的列表

  g=len(cdata)%4

  csdata=[]

  lx=len(cdata)-1

  ifg0:

  csdata.append(cdata[0:g])

  k=g

  whilek=lx:

  csdata.append(cdata[k:k 4])

  k=4

  returncsdata

  n

  bsp;defcschange(self,cki):#对[亿,万,仟]的list中每个字符串分组进行大写化再合并

  lenki=len(cki)

  i=0

  lk=lenki

  chk=u''

  foriinrange(lenki):

  ifint(cki[i])==0:

  ifi<lenki-1:

  ifint(cki[i+1])!=0:

  chk=chk+self.gdict[int(cki[i])]

  else:

  chk=chk+self.gdict[int(cki[i])]+self.cdict[lk]

  lk-=1

  returnchk

  

  defcwchange(self,data):

  cdata=str(data).split('.')

  cki=cdata[0]

  iflen(cdata)==1:

  i=0

  chk=u''

  cski=self.csplit(cki)#分解字符数组[亿,万,仟]三组List:['0000','0000','0000']

  ikl=len(cski)#获取拆分后的List长度

  #大写合并

  foriinrange(ikl):

  ifself.cschange(cski[i])=='':#有可能一个字符串全是0的情况

  chk=chk+self.cschange(cski[i])#此时不需要将数字标识符引入

  else:

  chk=chk+self.cschange(cski[i])+self.xdict[ikl-i]#合并:前字符串大写+当前字符串大写+标识符

  chk=chk+u'整'

  else:

  i=0

  chk=u''

  cski=self.csplit(cki)#分解字符数组[亿,万,仟]三组List:['0000','0000','0000']

  ikl=len(cski)#获取拆分后的List长度

  #大写合并

  foriinrange(ikl):

  ifself.cschange(cski[i])=='':#有可能一个字符串全是0的情况

  chk=chk+self.cschange(cski[i])#此时不需要将数字标识符引入

  else:

  chk=chk+self.cschange(cski[i])+self.xdict[ikl-i]#合并:前字符串大写+当前字符串大写+标识符

  #处理小数部分

  ckj=cdata[1]

  lenkj=len(ckj)

  iflenkj==1:#若小数只有1位

  ifint(ckj[0])==0:

  chk=chk+u'整'

  else:

  chk=chk+self.gdict[int(ckj[0])]+u'角整'

  else:#若小数有两位的四种情况

  ifint(ckj[0])==0andint(ckj[1])!=0:

  chk=chk+u'零'+self.gdict[int(ckj[1])]+u'分'

  elifint(ckj[0])==0andint(ckj[1])==0:

  chk=chk+u'整'

  elifint(ckj[0])!=0andint(ckj[1])!=0:

  chk=chk+self.gdict[int(ckj[0])]+u'角'+self.gdict[int(ckj[1])]+u'分'

  else:

  chk=chk+self.gdict[int(ckj[0])]+u'角整'

  returnchk

  

  if__name__=='__main__':

  pt=cnumber()

  print(pt.cwchange('14524'))#壹万肆仟伍佰贰拾肆元整以上就是python将数字转化为汉字的方法,大家可以先就基本的转换思路进行理解,然后在实例代码中体会转换的操作。更多编程基础知识学习:盛行IT软件开发工作室

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • python将字符串转换成日期,python 字符串转换为日期
  • python将字符串转换成日期,python 字符串转换为日期,Python如何将字符串转换为日期
  • python将字符串转换为数字型,python中数字字符和数字值有何不同,如何转换
  • python将两个一维数组转化为二维数组,matlab把二维数组转为三维数组
  • python将文本转为数组,python读取txt文件为数组
  • python将一个正整数分解成质因数,用python分解质因数
  • python单位转换编程英寸厘米,python将8厘米转换为以英寸为单位的长度并输出
  • python将列表中指定元素修改,python 替换列表中的元素
  • Python将字符串分割,python中把字符串分割成单个字符
  • python将数字转换为日期,python excel写入日期变数字
  • Python读取文件名写入Excel,python将结果写入excel文件
  • 用python将字符串进行反转,python中字符串反转函数
  • python 数字类型和字符串类型的相互转换,python将字符串类型转换为数字
  • Python读取文件名写入Excel,python将数据写入excel指定单元格
  • python中将字符串转化为数字,Python将字符串转为数字
  • 留言与评论(共有 条评论)
       
    验证码: