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编程开发之日期操作实例分析
Nov 13 Python
利用PyCharm Profile分析异步爬虫效率详解
May 08 Python
python tkinter库实现气泡屏保和锁屏
Jul 29 Python
python tkinter实现彩球碰撞屏保
Jul 30 Python
通过python检测字符串的字母
Feb 18 Python
Python如何实现在字符串里嵌入双引号或者单引号
Mar 02 Python
Python 将 QQ 好友头像生成祝福语的实现代码
May 03 Python
解决pyinstaller 打包exe文件太大,用pipenv 缩小exe的问题
Jul 13 Python
Python多分支if语句的使用
Sep 03 Python
Python爬虫Scrapy框架CrawlSpider原理及使用案例
Nov 20 Python
浅谈盘点5种基于Python生成的个性化语音方法
Feb 05 Python
基于python的matplotlib制作双Y轴图
Apr 20 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
PHP4实际应用经验篇(5)
2006/10/09 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
变量在 PHP7 内部的实现(二)
2015/12/21 PHP
30个精美的jQuery幻灯片效果插件和教程
2011/08/23 Javascript
js日期联动示例
2014/05/02 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
checkbox选中与未选中判断示例
2014/08/04 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
jQuery超精致图片轮播幻灯片特效代码分享
2015/09/10 Javascript
JavaScript中两个字符串的匹配
2016/06/08 Javascript
通过网页查看JS源码中汉字显示乱码的解决方法
2016/10/26 Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
2016/12/27 Javascript
JS对象的深度克隆方法示例
2017/03/16 Javascript
jQuery中map函数的两种方式
2017/04/07 jQuery
巧用weui.topTips验证数据的实例
2017/04/17 Javascript
JS实现移动端整屏滑动的实例代码
2017/11/10 Javascript
jquery ajaxfileupload异步上传插件
2017/11/21 jQuery
node.js通过axios实现网络请求的方法
2018/03/05 Javascript
Vue-cli3简单使用(图文步骤)
2019/04/30 Javascript
Weex开发之WEEX-EROS开发踩坑(小结)
2019/10/16 Javascript
js刷新页面location.reload()用法详解
2019/12/09 Javascript
Vue中key的作用示例代码详解
2020/06/10 Javascript
[43:41]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
[01:21]DOTA2 新英雄 森海飞霞
2020/12/18 DOTA
用Python展示动态规则法用以解决重叠子问题的示例
2015/04/02 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
2018/10/17 Python
python实现统计代码行数的小工具
2019/09/19 Python
伦敦高级内衣品牌:Agent Provocateur(大内密探)
2016/08/23 全球购物
三星新西兰官网:Samsung新西兰
2019/03/05 全球购物
DOUGLAS荷兰:购买香水和化妆品
2020/10/24 全球购物
学期自我鉴定范文
2013/10/01 职场文书
幼儿教师考核制度
2014/01/25 职场文书
机电专业大学生职业规划书范文
2014/02/25 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
我的生日感言
2015/08/03 职场文书
春节随笔
2015/08/15 职场文书