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的常见命令注入威胁
Feb 18 Python
Python实现统计文本文件字数的方法
May 05 Python
python3安装pip3(install pip3 for python 3.x)
Apr 03 Python
python 划分数据集为训练集和测试集的方法
Dec 11 Python
python爬虫 爬取58同城上所有城市的租房信息详解
Jul 30 Python
pyftplib中文乱码问题解决方案
Jan 11 Python
Pycharm debug调试时带参数过程解析
Feb 03 Python
Python Scrapy框架第一个入门程序示例
Feb 05 Python
new_zeros() pytorch版本的转换方式
Feb 18 Python
使用Django xadmin 实现修改时间选择器为不可输入状态
Mar 30 Python
基于PyQT实现区分左键双击和单击
May 19 Python
利用python做表格数据处理
Apr 13 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
《PHP边学边教》(04.编写简易的通讯录――视频教程1)
2006/12/13 PHP
php 面向对象的一个例子
2011/04/12 PHP
Zend Framework入门教程之Zend_Config组件用法详解
2016/12/09 PHP
php字符集转换
2017/01/23 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
2018/09/18 PHP
javascript cookies 设置、读取、删除实例代码
2010/04/12 Javascript
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
jQuery获取样式中的背景颜色属性值/颜色值
2012/12/17 Javascript
js实现不提交表单获取单选按钮值的方法
2015/08/21 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
React实现双向绑定示例代码
2016/09/19 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
2017/01/04 Javascript
jQuery实现获取隐藏div高度的方法示例
2017/02/09 Javascript
关于Angular2 + node接口调试的解决方案
2017/05/28 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
小程序实现层叠卡片滑动效果
2019/08/26 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
JS实现点击掉落特效
2021/01/29 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
Python装饰器基础详解
2016/03/09 Python
Python过滤列表用法实例分析
2016/04/29 Python
django反向解析和正向解析的方式
2018/06/05 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
tensorflow通过模型文件,使用tensorboard查看其模型图Graph方式
2020/01/23 Python
django之导入并执行自定义的函数模块图解
2020/04/01 Python
python程序输出无内容的解决方式
2020/04/09 Python
pandas读取csv文件提示不存在的解决方法及原因分析
2020/04/21 Python
Sneaker Studio波兰:购买运动鞋
2018/04/28 全球购物
介绍一下常见的木马种类
2014/11/15 面试题
进程的查看和调度分别使用什么命令
2013/12/14 面试题
秋季校运动会广播稿
2014/02/23 职场文书
印刷技术专业自荐信
2014/09/18 职场文书
高中家长意见怎么写
2015/06/03 职场文书
8个JS的reduce使用实例和reduce操作方式
2021/10/05 Javascript
Python  序列化反序列化和异常处理的问题小结
2022/12/24 Python