十进制和二十进制的转换
假设A代表十进制的 0 ,B代表十进制的1 ,Z 代表26 ,AA代表27,一次类推,那么ZZZZ代表十进制的多少?
这里面有一个20进制的问题,下面用python代码实现 十进制和 二十进制之间的互相转换。
首先把26个英文字母定义一个数组,去除字母“I” ,“O”,因为字母I 和十进制的1 很像,字母O和十进制的0很像。
1 #!/usr/local/bin/python2 import string3 import os4 import re5 import sys67 wl = list(string.uppercase) #快速定义26个英文字母的数组8 rl = ["I","O"] #定义需要排除的英文字母910 for i in rl: #从wl中移除不需要的英文字母11 while i in wl:12 wl.remove(i)13
def transv( number ): #传入英文字母返回十进制的数字num = len(number)if num == 1:tnum = wl.index(version)return str(tnum)if num == 2:bit = int(wl.index(version[-1]))tenplace = (int(wl.index(version[0]))+1)*20return str(bit + tenplace)if num == 3:bit = int(wl.index(version[-1]))tenplace = (int(wl.index(version[1]))+1)*20thousbit = (int(wl.index(version[0]))+1)*20*20return str(bit + tenplace + thousbit)if num == 4:bit = int(wl.index(version[-1]))tenplace = (int(wl.index(version[2]))+1)*20thousbit = (int(wl.index(version[1]))+1)*20*20tenthous = (int(wl.index(version[0]))+1)*20*20*20return str(bit + tenplace + thousbit + tenthous)def convert( num ): #传入十进制的num,返回英文字母num = int(num)if num <= 19:rsnu = wl[num]return rsnuif num >19 and num <= 419:fir = wl[num % 20]sec = wl[(num // 20)-1]return sec + firif num > 419 and num <= 8419:fir = wl[num % 20]sec = wl[(num // 20)%20 - 1]if num % 400 <= 19:thr = wl[((num // 20)//20)%20 - 2]else:thr = wl[((num // 20)//20)%20 - 1]return thr + sec + firif num > 8419 and num <= 168419:fir = wl[num % 20]sec = wl[(num // 20)%20 - 1]if num % 400 <= 19:thr = wl[((num // 20)//20)%20 -2]else:thr = wl[((num // 20)//20)%20 -1]if num % 4000 <= 419:fou = wl[(((num // 20)//20)//20)%20 - 2]else:fou = wl[(((num // 20)//20)//20)%20 - 1]return fou + thr + sec + firif __name__ == '__main__':number = transv("ZZZZ")print numberenglish = convert("168419")print english
输出结果:
168419
ZZZZ
十进制和二十进制的转换相关推荐
- 点分十进制IP校验、转换,掩码校验
/****************************************************************************** 点分十进制IP校验.转换,掩码校验* 声 ...
- vivado中如何读取十进制小数_二进制十进制间小数怎么转换,原来是这样的
二进制十进制间小数怎么转换?感兴趣的小伙伴们快来了解一下吧. 工具/材料 纸.笔 十进制的小数到二进制的转换 01 步骤: 1.小数部分*2: 2.得到的结果*2,取整数部分. 3.得到的结果*2,取 ...
- java十进制转二进制(输入一个十进制数将其转换成二进制)
十进制数转二进制数,跟据不同的开发语言其转换方式有很多,在Java中如果相把一个十进制的整数来转换成二进制那是举手之劳,非常简单,只要用Integer.toBinaryString(int)方法就可以 ...
- 十进制与二进制之间转换详解
文章目录 十进制与二进制之间转换详解 (一)十进制数转二进制数 1.1 十进制正整数转二进制 1.2 十进制负整数转二进制 1.3 十进制小数转二进制数 (二) 二进制数转成十进制数 2.1 二进制整 ...
- 二进制、八进制、十进制和十六进制的转换
二进制.八进制.十进制和十六进制的转换 进制概述 二进制.八进制.十进制和十六进制的组成 进制转换 其他进制到十进制 十进制到其他进制 二进制到八进制和二进制到十六进制的转换 十进制和二进制的快速转换 ...
- IP地址的分类 十进制与二进制的转换
liuweifei 1.IP地址的分类: A类IP地址 A类IP地址就由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须 是"0".地址范围从1.0.0.1到127. ...
- 计算机二进制、八进制、十进制、十六进制的转换(计算机基础进制的转换)及进制在线转换网址
常用进制转换 1.进制特点 2.十进制与二进制的转换 2.1对应关系 2.2举例一:二进制1101转换十进制 2.3举例二:二进制10111转换十进制 2.3举例三:十进制45转换成二进制 2.4举例 ...
- 计算机常用数制转换说课稿,小学信息说课稿:十进制与二进制的转换
<十进制与二进制的转换>是小学学科中重点内容,也是教师招考中的重点内容.下面的小编将从教材分析.学情分析.教学目标确立.教法与学法及教学设计五个方面的内容进行阐述这篇说课稿: 一.教材分析 ...
- c语言二进制转换算法栈,用C语言顺序栈实现十进制和二进制的转换
用C语言顺序栈实现十进制和二进制的转换 #include #include #include #define M 100 typedef int datatype; typedef struct{ d ...
- oracle 二进制与运算,ORACLE使用函数对二进制、十进制、十六进制数互相转换
文中涉及: 十进制与十六进制的互相转换 二进制与十进制的互相转换 二进制与十六进制的互相转换 1.将十进制的数转换为十六进制的数请使用to_char函数. 数据库中16进制的表达是按照字符串来描述的, ...
最新文章
- 有奖话题讨论:你的互联网从业故事
- 如何使用python画折线图-Python数据可视化:使用Python画柱状图和折线图
- 录取5秒钟的KNN取景效果gif(Opencv) Python实现
- 数据库设计中的五个范式
- 单曲循环 翻译_有没有那么一首歌是你的单曲循环?
- 采购订单增强(根据公司代码、采购订单类型等相关订单信息给采购订单税码设置默认值)
- Nginx在Windows下载安装启动与配置前后端请求代理
- (转)Cairngorm初学者入门教程 第四节--通过 Model Locator 控制管理 Views
- C和指针之strcat函数 strchr函数 strcmp函数 strcpy函数 strnchr函数 strstr函数实现
- Spring Cloud对Hystrix的支持
- Struts2 过滤器与拦截器
- 懒加载和预加载的区别_类的动态创建(ro,rw)amp; 懒加载类和非懒加载类底层加载的区别 amp; 类和分类的搭配分析...
- [BZOJ4897][Thu Summer Camp2016]成绩单
- Android 四大组件学习之Activity三
- 原理图端口符号_电气百科:电气原理图和接线图区别详解
- Idea导入项目及相关环境配置
- 实现WEB打印的几种方法
- VS2015安装教程详细步骤及配置Opencv4.1.1(亲测)
- Openlayers地图背景透明度设置
- 这三年,一路走来,劈荆斩棘 – Vol 2