Python将阿拉伯数字转换为罗马数字的方法


Posted in Python onJuly 10, 2015

本文实例讲述了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 相关文章推荐
基于python的汉字转GBK码实现代码
Feb 19 Python
Python 实现文件的全备份和差异备份详解
Dec 27 Python
浅谈DataFrame和SparkSql取值误区
Jun 09 Python
PyCharm代码整体缩进,反向缩进的方法
Jun 25 Python
Django进阶之CSRF的解决
Aug 01 Python
python实现集中式的病毒扫描功能详解
Jul 09 Python
python Popen 获取输出,等待运行完成示例
Dec 30 Python
Python模拟FTP文件服务器的操作方法
Feb 18 Python
在python tkinter界面中添加按钮的实例
Mar 04 Python
python matplotlib包图像配色方案分享
Mar 14 Python
对python中arange()和linspace()的区别说明
May 03 Python
OpenCV Python实现图像指定区域裁剪
Mar 12 Python
Python自动登录126邮箱的方法
Jul 10 #Python
Python获取邮件地址的方法
Jul 10 #Python
python实现中文分词FMM算法实例
Jul 10 #Python
Python实现的最近最少使用算法
Jul 10 #Python
Python导入oracle数据的方法
Jul 10 #Python
Python验证码识别的方法
Jul 10 #Python
Python实现大文件排序的方法
Jul 10 #Python
You might like
ThinkPHP之N方法实例详解
2014/06/20 PHP
PHP最常用的正则表达式
2017/02/13 PHP
Laravle eloquent 多对多模型关联实例详解
2017/11/22 PHP
PHP dirname简单使用代码实例
2020/11/13 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
获取服务器传来的数据 用JS去空格的正则表达式
2012/03/26 Javascript
常见表单重复提交问题整理及解决方法
2013/11/13 Javascript
JavaScript中的函数模式详解
2015/02/11 Javascript
全面解析Bootstrap中transition、affix的使用方法
2016/05/30 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
JS简单实现仿百度控制台输出信息效果
2016/09/04 Javascript
基于bootstrap的文件上传控件bootstrap fileinput
2016/12/23 Javascript
jQuery Password Validation密码验证
2016/12/30 Javascript
JavaScript BASE64算法实现(完美解决中文乱码)
2017/01/10 Javascript
echart简介_动力节点Java学院整理
2017/08/11 Javascript
js用类封装pop弹窗组件
2017/10/08 Javascript
jQuery+vue.js实现的多选下拉列表功能示例
2019/01/15 jQuery
JavaScript偏函数与柯里化实例详解
2019/03/27 Javascript
jQuery轮播图功能制作方法详解
2019/12/03 jQuery
jQuery 判断元素是否存在然后按需加载内容的实现代码
2020/01/16 jQuery
Python中encode()方法的使用简介
2015/05/18 Python
Python工程师面试题 与Python Web相关
2016/01/14 Python
Joie官方网上商店:购买服装和女装配饰
2018/06/05 全球购物
Ray-Ban雷朋太阳眼镜英国官网:Ray-Ban UK
2019/11/23 全球购物
2013年入党人员的自我鉴定
2013/10/25 职场文书
编辑硕士自荐信范文
2013/11/27 职场文书
幼儿园实习自我鉴定
2013/12/15 职场文书
机械设计职业生涯规划书
2013/12/27 职场文书
幼儿园秋游感想
2014/03/12 职场文书
培训科主任岗位职责
2014/08/08 职场文书
报到证办理个人委托书
2014/10/06 职场文书
个性发展自我评价2015
2015/03/09 职场文书
2015年高三班主任工作总结
2015/05/21 职场文书
《只有一个地球》教学反思
2016/02/16 职场文书
Nginx速查手册及常见问题
2022/04/07 Servers