用Python代码实现阿拉伯数字与罗马数字转换讲解,python阿拉伯,在编橙之家之前的文章中曾


在编橙之家之前的文章中曾经为大家介绍过,用Python罗马数字转换为阿拉伯数字的方法。今天再为大家讲一下用Python代码实现将阿拉伯数字转换为罗马数字的方法

罗马数字与阿拉伯数字的转换或是大小写的转换,类似于这种转换的问题在python中是很常见的,解决的方法也是多种多样,有很多python技巧在里边。下边的将阿拉伯数字转换成罗马数字的方法可能不是最简洁的,但却可以实现效果。给需要用python代码来解决不同类型数字之前转换的朋友们一点帮助吧。

罗马数字与阿拉伯数字对照表:

python罗马数字与阿拉伯数字转换

将阿拉伯数字转换成罗马数字的具体python代码如下:

def numToRomanNum(Num): """digital will be converted into Roman numerals,Ex: numToRomanNum(3999)"""          if Num < 1 or Num > 3999:         print 'The Num must in 1-3999'     else:         NumDic = {             '1':('I','IV','V','IX'),             '2':('X','XL','L','XC'),             '3':('C','CD','D','CM'),             '4':('M')             }         items = sorted(NumDic.items())         retstr = ''#www.iplaypy.com                  for item in items:#语句间的缩进很重要,思路清晰与否全都体现在代码上。             str = ''             (Num,modNum) = divmod(Num,10)             if modNum != 0:                 if item[0] != '4':                     if modNum <= 3:                         while modNum > 0:                             str = str.join(['',item[1][0]])                             modNum -= 1                     elif modNum < 5:                         str = item[1][1]                     elif modNum == 5:                         str = item[1][2]                     elif modNum < 9:                         str = item[1][2]                         while modNum > 5:                             str = str.join(['',item[1][0]])                             modNum -= 1                     else:                         str = item[1][3]                 else:                     while modNum > 0:                         str = str.join(['',item[1][0]])                         modNum -= 1                 retstr = str.join(['',retstr])         return retstr  #注意这里的缩进,要输出的是什么
Python代码将罗马数字转换成普通的阿拉伯数字。罗马数字在编程的时候并不常用,一但遇到有了以上的python代码帮助转换,也不再是什么难题了。

编橙之家文章,

评论关闭