本文实例讲述了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 = \'\' 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实现处理管道的方法