Python将阿拉伯数字转换为罗马数字的方法
本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法。分享给大家供大家参考。具体实现方法如下:
defnumToRomanNum(Num): """digitalwillbeconvertedintoRomannumerals,Ex:numToRomanNum(3999)""" ifNum<1orNum>3999: print'TheNummustin1-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='' foriteminitems: str='' (Num,modNum)=divmod(Num,10) ifmodNum!=0: ifitem[0]!='4': ifmodNum<=3: whilemodNum>0: str=str.join(['',item[1][0]]) modNum-=1 elifmodNum<5: str=item[1][1] elifmodNum==5: str=item[1][2] elifmodNum<9: str=item[1][2] whilemodNum>5: str=str.join(['',item[1][0]]) modNum-=1 else: str=item[1][3] else: whilemodNum>0: str=str.join(['',item[1][0]]) modNum-=1 retstr=str.join(['',retstr]) returnretstr
希望本文所述对大家的Python程序设计有所帮助。