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使用Flask框架获取用户IP地址的方法
Mar 21 Python
python字符串中的单双引
Feb 16 Python
Python 中 Virtualenv 和 pip 的简单用法详解
Aug 18 Python
基于numpy.random.randn()与rand()的区别详解
Apr 17 Python
基于数据归一化以及Python实现方式
Jul 11 Python
Python读取txt内容写入xls格式excel中的方法
Oct 11 Python
python 标准差计算的实现(std)
Jul 29 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
Aug 04 Python
基于Django框架的权限组件rbac实例讲解
Aug 31 Python
Python开发之基于模板匹配的信用卡数字识别功能
Jan 13 Python
Keras-多输入多输出实例(多任务)
Jun 22 Python
python os.rename实例用法详解
Dec 06 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中global和$GLOBALS[]的分析之一
2012/02/02 PHP
ThinkPHP3.1新特性之对Ajax的支持更加完善
2014/06/19 PHP
ThinkPHP实现带验证码的文件上传功能实例
2014/11/01 PHP
php采用curl实现伪造IP来源的方法
2014/11/21 PHP
php字符串操作常见问题小结
2016/10/11 PHP
利用php生成验证码
2017/02/23 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
Jquery Autocomplete 结合asp.net使用要点
2010/10/29 Javascript
Js event事件在IE、FF兼容性问题
2011/01/01 Javascript
在jQuery中 常用的选择器介绍
2013/04/16 Javascript
javascript中的=等号个数问题两个跟三个有什么区别
2013/10/23 Javascript
jquery 模板的应用示例
2013/11/12 Javascript
JavaScript学习笔记之基础语法
2015/01/22 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
2016/02/26 Javascript
node.js微信公众平台开发教程
2016/03/04 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
2016/06/17 Javascript
AngularJS基础 ng-list 指令详解及示例代码
2016/08/02 Javascript
微信小程序 开发工具快捷键整理
2016/10/31 Javascript
在点击div中的p时,如何阻止事件冒泡
2017/02/07 Javascript
详解React Native网络请求fetch简单封装
2017/08/10 Javascript
浅谈vux之x-input使用以及源码解读
2018/11/04 Javascript
js canvas画布实现高斯模糊效果
2018/11/27 Javascript
vue实现简单计算商品价格
2020/09/14 Javascript
Python网络编程 Python套接字编程
2017/09/13 Python
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
定制别致的瑜伽垫:Sugarmat
2019/06/21 全球购物
绢花、人造花和人造花卉:BLOOM
2019/08/07 全球购物
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
广告设计专业自荐信范文
2013/11/14 职场文书
大学班级文化建设方案
2014/05/06 职场文书
贷款担保书范文
2014/05/13 职场文书
平面设计师岗位职责
2014/09/18 职场文书
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python