iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python中常见进制之间的转换方式
  • 682
分享到

python中常见进制之间的转换方式

2024-04-02 19:04:59 682人浏览 薄情痞子

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

摘要

目录1. 很多情况下需要进行不同进制之间的转换下面的表格反应了常见进制之间的转换2. 第二种是使用fORMat函数进行转换3. 手动转化10进制转换为其他进制代码其他的进制转为10进

1. 很多情况下需要进行不同进制之间的转换

其中比较常用到的是python的内置函数进行进制的转换,一般使用内置函数进行转换的时候是先将控制台输入的字符串或者是自定义的字符串先转换为10进制然后将10进制转换为其他的进制,常见的是二进制、十进制、八进制、十六进制之间的转换,其中遵循一个原则是:

其他进制转为十进制使用int函数,其他进制转为二进制使用bin函数,其他进制转为八进制使用oct函数,其他进制转为十六进制转为hex函数,并且是借助于10进制作为中间的桥梁进行转换,也就是使用到int()函数,

下面的表格反应了常见进制之间的转换

并且转换为对应的权重之后对应的字符串会有相应的前缀,二进制前缀为0b,八进制前缀为0o,十六进制前缀为0x 

 2进制8进制10进制16进制
2进制-bin(int(input(),8))bin(int(input(),10))bin(int(input(),16))
8进制oct(int(input(), 2))-oct(int(input(),10))oct(int(input(),16))
10进制int(input(),2))int(input(),8)-int(input(),2)
16进制hex(int(input(), 2))hex(int(input(),8))hex(int(input(),10))-

使用内置函数的时候反正是转换为哪一个进制就使用一个进制对应的函数即可,中间需要先转换为十进制(int()函数),其中进制转换涉及到的内置函数有:2进制:bin(),8进制:oct(),10进制:int(),16进制:hex()

if __name__ == '__main__':
    # input接收到的是字符串, 使用int函数定义输入的是什么进制的字符串转换为10进制数字
    print(bin(int(input(), 16)))
    print(int(input(), 10))
    print(oct(int(input(), 10)))
    print(hex(int(input(), 10)))

2. 第二种是使用format函数进行转换

在format中加上b,o,x将其他进制的转换为二进制、八进制或者是十六进制

if __name__ == '__main__':
    print("{:b}".format(int(input(), 8)))
    print("{:o}".format(int(input(), 8)))
    print("{:x}".format(int(input(), 8)))

3. 手动转化

10进制转换为其他进制代码

class Solution:
    # 将十进制数字转换为任意的进制(1-16)
    def decimalToAny(self, decimal: int, x: int):
        remainder = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"]
        # 当n大于0的时候执行循环
        res = ""
        while decimal:
            res = remainder[decimal % x] + res
            decimal //= x
        return res
 
if __name__ == '__main__':
    decimal, x = map(int, input().split())
    print(Solution().decimalToAny(decimal, x))

其他的进制转为10进制代码

class Solution:
    # 快速幂: x ** n
    def quickPower(self, x: int, n: int):
        res = 1
        while n > 0:
            if n % 2 == 1:
                res *= x
            x *= x
            n //= 2
        return res
 
    def anyToDecimal(self, s: str, base: int):
        n = len(s)
        res = 0
        for i in range(n):
            # 数字, ord函数获取字母的ascii值
            if "0" <= s[i] <= "9":
                res += (ord(s[i]) - ord("0")) * self.quickPower(base, n - i - 1)
            # 16进制数字对应的权重
            elif "a" <= s[i] <= "f":
                res += (ord(s[i]) - ord("a") + 10) * self.quickPower(base, n - i - 1)
            else:
                res += (ord(s[i]) - ord("A") + 10) * self.quickPower(base, n - i - 1)
        return res
 
if __name__ == '__main__':
    li = input().split()
    print(Solution().anyToDecimal(li[0], int(li[1])))

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: python中常见进制之间的转换方式

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

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

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

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

下载Word文档
猜你喜欢
  • python中常见进制之间的转换方式
    目录1. 很多情况下需要进行不同进制之间的转换下面的表格反应了常见进制之间的转换2. 第二种是使用format函数进行转换3. 手动转化10进制转换为其他进制代码其他的进制转为10进...
    99+
    2022-11-11
  • python中常见进制之间的转换方式是什么
    这篇文章主要介绍“python中常见进制之间的转换方式是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中常见进制之间的转换方式是什么”文章能帮助大家解决问题。1. 很多情况下需要进行...
    99+
    2023-06-30
  • python中各进制之间的转换
    一日不学,如隔千秋啊!最近正逢开学,一直都没有看过书。今天想着做几道进制转换的题。算完之后,本想用python检验一下的,没想到竟然忘掉怎么转换的了(话说平时也基本不怎么用到进制转换)。果断翻书去查,哪知翻来翻去,硬是没找到(当初学的时候也...
    99+
    2023-01-31
    python 中各进制
  • python常见进制转换方法有哪些
    1. 标准进制转换其中比较常用到的是python的内置函数进行进制的转换,一般使用内置函数进行转换的时候是先将控制台输入的字符串或者是自定义的字符串先转换为10进制然后将10进制转换为其他的进制,常见的是二进制、十进制、八进制、十六进制之间...
    99+
    2023-05-14
    Python
  • python常见进制转换方法示例代码
    目录1. 标准进制转换2. 任意进制间的转换补充总结1. 标准进制转换 其中比较常用到的是python的内置函数进行进制的转换,一般使用内置函数进行转换的时候是先将控制台输入的字符串...
    99+
    2023-05-18
    python 进制转换 python如何进制转换 python中的进制转换
  • vue中常见的时间格式转换
    项目中后台返回的时间有多种形式,时间戳、ISO标准时间格式等,我们需要转化展示成能看的懂得时间格式: 1、将2020-06-27T14:20:27.000000Z 时间格式转换成 2...
    99+
    2022-11-13
  • Python实现任意进制之间的转换
      在日常生活中我们频繁使用到数学的进制,如季度逢三进一,星期逢七进一;×××、小时使用12进制,每天使用24进制,每月使用30进制,分秒使用60进制,一年使用360进制等等;在编程过程中我们经常需要转换进制,虽然Python已经内置了常...
    99+
    2023-01-31
    Python
  • vue中常见的时间格式转换有哪些
    这篇文章主要介绍“vue中常见的时间格式转换有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue中常见的时间格式转换有哪些”文章能帮助大家解决问题。项目中后台返回的时间有多种形式,时间戳、IS...
    99+
    2023-06-30
  • JavaScript进制数之间的互相转换
    目录一、十进制的数化为k进制的数二、k进制的数化为十进制的数三、例题1.其它进制转换为十进制数据2.十进制数据转换为其它进制3.其它进制之间的相互转换前言: 进制转换是人们利用符号来...
    99+
    2022-11-13
  • python label与one-hot之间的互相转换方式
    目录label与one-hot之间的互相转换label 转 one-hotone-hot 转labellabel:one-hot 与 标量转化标量 转化为 one-hot 向量one...
    99+
    2023-02-01
    python label python one-hot label与one-hot互相转换
  • Python进制转换和ASCLL转换的方法
    这篇文章主要介绍“Python进制转换和ASCLL转换的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python进制转换和ASCLL转换的方法”文章能帮助大家解决问题。进制转换进制之间的转换主...
    99+
    2023-06-29
  • python常用时间库time、datetime与时间格式之间如何转换
    这篇“python常用时间库time、datetime与时间格式之间如何转换”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“p...
    99+
    2023-07-05
  • Python实现常见数据格式转换的方法详解
    目录xml_to_csvcsv_to_tfrecordxml_to_csv 代码如下: import os import glob import pandas as pd impor...
    99+
    2022-11-11
  • PHP如何将时间戳转换为常见的时间格式
    本文小编为大家详细介绍“PHP如何将时间戳转换为常见的时间格式”,内容详细,步骤清晰,细节处理妥当,希望这篇“PHP如何将时间戳转换为常见的时间格式”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。将时间戳转换为日期...
    99+
    2023-07-05
  • 手把手教你JAVA进制之间的转换
    目录1.前言2.不同进制的特点3.进制之间的转换3.1 二进制转十进制:3.2 十进制转二进制:3.3 二进制转八进制:3.4 十六进制转二进制:3.5 二进制转十六进制:4. 代码...
    99+
    2022-11-12
  • python整数中进制转换的方法
    这篇文章主要介绍了python整数中进制转换的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python可以做什么Python是一种编程语言,内置了许多有效的工具,Pyt...
    99+
    2023-06-14
  • C语言中强制类型转换的常见方法
    目录将浮点数转换为整数将整数转换为字符将指针转换为整数将整数转换为指针注意事项示例代码结论C语言是一门强大的编程语言,它允许我们对不同的数据类型进行各种运算和操作。但是有时候,我们需...
    99+
    2023-05-20
    C语言强制类型转换方法 C语言强制类型转换 C语言 类型转换
  • Python中三种时间格式转换的方法
    目录一 时间元组二 字符串与时间戳三 时间的加减用法一 时间元组 1. 时间元组和时间戳的互化 import time,datetime # 获取当前时间的时间元组 t = time...
    99+
    2023-05-18
    Python 时间格式转换 Python 时间转换
  • QT实现二、八、十六进制之间的转换
    主要使用QT中的三个方法。 第一个是QString::number(int n, int base = 10);第二个是QString::setNum(short n, int ba...
    99+
    2022-11-13
  • JS时间戳转换为常用时间格式的三种方式
    目录前言1、js 时间戳转日期(可直接复制)2、在main.js中创建过滤器(1)main.js中,创建过滤器将其挂载到vue上(2)页面中具体使用3、day.js(1)三种安装方式...
    99+
    2023-05-16
    js时间戳转换为时间 js时间戳转换 js怎么将时间戳换为时间
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作