def numToRomanNum(Num): """digital will be converted into Roman numerals,Ex: numToRomanNum(3999)""" if 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 0: str = str.join(['',item[1][0]]) modNum -= 1 elif 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将阿拉伯数字转换为罗马数字的方法的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did89059