广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python实现任意进制之间的转换
  • 910
分享到

Python实现任意进制之间的转换

Python 2023-01-31 02:01:39 910人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

  在日常生活中我们频繁使用到数学的进制,如季度逢三进一,星期逢七进一;×××、小时使用12进制,每天使用24进制,每月使用30进制,分秒使用60进制,一年使用360进制等等;在编程过程中我们经常需要转换进制,虽然python已经内置了常

  在日常生活中我们频繁使用到数学的进制,如季度逢三进一,星期逢七进一;×××、小时使用12进制,每天使用24进制,每月使用30进制,分秒使用60进制,一年使用360进制等等;在编程过程中我们经常需要转换进制,虽然python已经内置了常用进制转换函数,如int,bin,hex,oct;但是如果我们需要转换成其他进制怎么办呢?

   我们知道,十进制转换成二进制时,使用“除2取余,逆序排列”即可。二进制转换成十进制时按权展开,即可得到十进制。类似地可以实现十进制转换成任意进制,任意进制也可以转换成十进制;通过十进制进行中转,即可实现任意进制数之间的转换了。

   下面实现一个20进制内的任意转换(PS:需要转换成更多的进制,只需添加相应的字符即可)


#将十进制数转换成任意进制20进制以内,任意进制只需添加不同的符号即可
def decimalToAny(num,n):
   baseStr = {10:"a",11:"b",12:"c",13:"d",14:"e",15:"f",16:"g",17:"h",18:"i",19:"j"}
   new_num_str = ""
   while num != 0:
       remainder = num % n
       if 20 > remainder > 9:
           remainder_string = baseStr[remainder]
       elif remainder >=20:
           remainder_string = "("+str(remainder)+")"
       else:
           remainder_string = str(remainder)
       new_num_str = remainder_string+new_num_str
       num = num / n
   return new_num_str

#将任意进制数转换成十进制
def anyToDecimal(num,n):
   baseStr = {"0":0,"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,
              "a":10,"b":11,"c":12,"d":13,"e":14,"f":15,"g":16,"h":17,"i":18,"j":19}
   new_num = 0
   nNum = len(num) - 1
   for i in num:        
       new_num = new_num  + baseStr[i]*pow(n,nNum)
       nNum = nNum -1
   return new_num


目前只实现了简单的功能,后续慢慢完善;欢迎大家探讨!

--结束END--

本文标题: Python实现任意进制之间的转换

本文链接: https://www.lsjlt.com/news/186573.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python实现任意进制之间的转换
      在日常生活中我们频繁使用到数学的进制,如季度逢三进一,星期逢七进一;×××、小时使用12进制,每天使用24进制,每月使用30进制,分秒使用60进制,一年使用360进制等等;在编程过程中我们经常需要转换进制,虽然Python已经内置了常...
    99+
    2023-01-31
    Python
  • Java实现任意进制转换
    本文实例为大家分享了Java实现任意进制转换的具体代码,供大家参考,具体内容如下 问题描述 编写程序实现任意进制间的相互转换 (一)、进制转换思想 1、先把任意进制转化为十进制 2、...
    99+
    2022-11-12
  • C语言实现任意进制转换器
    本文实例为大家分享了C语言实现任意进制转换器的具体代码,供大家参考,具体内容如下 简单的C语言任意进制转换器 该进制转换器可进行任意进制转换,请看效果图: 代码 #include...
    99+
    2022-11-13
  • python中各进制之间的转换
    一日不学,如隔千秋啊!最近正逢开学,一直都没有看过书。今天想着做几道进制转换的题。算完之后,本想用python检验一下的,没想到竟然忘掉怎么转换的了(话说平时也基本不怎么用到进制转换)。果断翻书去查,哪知翻来翻去,硬是没找到(当初学的时候也...
    99+
    2023-01-31
    python 中各进制
  • QT实现二、八、十六进制之间的转换
    主要使用QT中的三个方法。 第一个是QString::number(int n, int base = 10);第二个是QString::setNum(short n, int ba...
    99+
    2022-11-13
  • python中常见进制之间的转换方式
    目录1. 很多情况下需要进行不同进制之间的转换下面的表格反应了常见进制之间的转换2. 第二种是使用format函数进行转换3. 手动转化10进制转换为其他进制代码其他的进制转为10进...
    99+
    2022-11-11
  • JS表示Stack类练习用栈实现任意进制转换
    目录基本概念基本方法类实现应用场景练习 1:十进制数字转化为二进制练习 2:十进制数字转化为任意进制基本概念 夯下数据结构和算法基础,JS 里没有栈、队列、链表巴拉巴拉明显的结构,只...
    99+
    2023-05-17
    JS表示Stack类进制转换 JS表示Stack类
  • QT怎么实现二、八、十六进制之间的转换
    这篇文章主要讲解了“QT怎么实现二、八、十六进制之间的转换”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“QT怎么实现二、八、十六进制之间的转换”吧!主要使用QT中的三个方法。第一个是QStr...
    99+
    2023-06-30
  • JavaScript进制数之间的互相转换
    目录一、十进制的数化为k进制的数二、k进制的数化为十进制的数三、例题1.其它进制转换为十进制数据2.十进制数据转换为其它进制3.其它进制之间的相互转换前言: 进制转换是人们利用符号来...
    99+
    2022-11-13
  • Python怎么实现进制转换
    这篇文章主要介绍“Python怎么实现进制转换”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python怎么实现进制转换”文章能帮助大家解决问题。使用int()转换int()类可将数字或字符串转换为...
    99+
    2023-06-28
  • python中常见进制之间的转换方式是什么
    这篇文章主要介绍“python中常见进制之间的转换方式是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中常见进制之间的转换方式是什么”文章能帮助大家解决问题。1. 很多情况下需要进行...
    99+
    2023-06-30
  • Oracle中通过函数实现二、八、十、十六进制任意转换
    说明:本文主要参考于: http://www.eygle.com/archives/2004/06/oracle_howto_convert.html 一、先创建两个基本的进制转换函数: &n...
    99+
    2022-10-18
  • Shell脚本之进制转换器的实现
    目录一、需求说明二、脚本内容三、使用示例一、需求说明 计算IP地址我们经常需要将十进制和二进制数值之间进行转换,实际上进制之间转换通过bc命令就可以完成。此进制转换器shell脚本就是利用bc进制转换功能来实现我们的需求...
    99+
    2023-03-23
    Shell 进制转换器 Shell 进制转换
  • 手把手教你JAVA进制之间的转换
    目录1.前言2.不同进制的特点3.进制之间的转换3.1 二进制转十进制:3.2 十进制转二进制:3.3 二进制转八进制:3.4 十六进制转二进制:3.5 二进制转十六进制:4. 代码...
    99+
    2022-11-12
  • 怎么用Python实现进制转换
    这篇文章主要讲解了“怎么用Python实现进制转换”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Python实现进制转换”吧!Python 实现进制转换一、导言导语:在计算机进行数据交...
    99+
    2023-06-02
  • Python 实现list,tuple,str和dict之间的相互转换
    1、字典(dict) dict = {‘name': ‘Zara', ‘age': 7, ‘class': ‘First'} 1.1 字典——字符串 返回: print t...
    99+
    2022-11-11
  • Shell脚本之进制转换器如何实现
    本篇内容介绍了“Shell脚本之进制转换器如何实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、需求说明计算IP地址我们经常需要将十进制...
    99+
    2023-07-05
  • python 实现format进制转换与删除进制前缀
    10进行十进制,十六进制,八进制,二进制的转换: (#:保留进制前缀) 对于带着进制前缀的,如"0x"“0o”“0b”,可以直接在后面加上'x'‘o''b'进行删除: 其他的一些...
    99+
    2022-11-11
  • java中VO和DTO之间的转换实现
    目录一、背景二、详细讲解注意三、实体对象间的转换四、第一种方法的具体代码例子五、第二种方法的具体代码例子(使用dozer)六、结束一、背景 1.领域模型中的实体类分为四种类型:VO、...
    99+
    2022-11-13
  • Java之实现十进制与十六进制转换案例讲解
    写了两种十六进制转十进制的方式,仅供参考。 基本思路:用十六进制中每一位数乘以对应的权值,再求和就是对应的十进制 方法一: import java.util.HashMap; i...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作