python之详解各种进制转换(二,八,十,十六进制间转换)

进制转换

  • 1、原理
  • 2、进制概述
  • 3、(二,八,十六进制)转十进制
  • 4、十进制 转换为(二,八,十六进制)
  • 5、其他
  • 6、python实现二进制与整型之间的转换
    • 5.1 整型转换二进制
    • 5.2 二进制转整型

1、原理

进制转换是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”与“位权”构成。

基数是指,进位计数制中所采用的数码(数制中用来表示“量”的符号)的个数。
python之详解各种进制转换(二,八,十,十六进制间转换)_第1张图片

2、进制概述

二进制

  • 二进制就是计算机常用的进制,即逢二进一。例如:1010

八进制

  • 八进制即逢八进一。例如:626

十进制

  • 十进制就是我们在计算中常用的进制,所以就不再举例(即逢十进一)

十六进制

  • 十六进制与其它进制有所不同,在10到15用英文字母进行表示。

在这里插入图片描述

3、(二,八,十六进制)转十进制

方法:假设我们要将n进制转换为十进制即整型,首先我们从n进制的右边为第一位数(从低位到高位),其权值是n的0次方,第二位是n的1次方,依次递增下去,把最后的结果(位值上的数乘以相应的权值)相加的值就是十进制的值了。

举个例子:将(1101)n 转换为十进制

(1101)n = 1*(n)^3 + 1 * (n) ^ 2 + 0 * (n) ^ 1 + 0 * (n) ^ 0 ;

如:
(1101) 2 = 1*(2)^3 + 1* (2) ^ 2 + 0* (2) ^ 1 + 1 * (2) ^ 0 = 13;

4、十进制 转换为(二,八,十六进制)

假设我们要将十进制转换为n进制

方法:除n取余,逆序排列余数法即每次将整数部分除以n,余数为该位权上的数,而商继续除以n,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。

python之详解各种进制转换(二,八,十,十六进制间转换)_第2张图片

例子:

python之详解各种进制转换(二,八,十,十六进制间转换)_第3张图片

5、其他

其他详情内容见(二进制) ↔ (八、十六进制);(八进制) ↔ (十六进制);

6、python实现二进制与整型之间的转换

5.1 整型转换二进制

1、使用python内置函数bin()

bin(56)
#输出'0b111000'
  • 其中0b表示后面的数值是二进制

2、采用字符串的format方法获取整型的二进制

a = 56
aa = "{0:b}".format(a)
print(aa)
# 输出111000

5.2 二进制转整型

1、直接使用print输出

print(0b111000)
#输出56

2、使用int直接转换输出

print(int(0b111000))

3、二进制字符串转换整型

a = "111000"
b = int(a, 2)
print(b)
  • int()中的第二个参数表示第一个参数表示的几进制的数,默认第二个参数base=10,这里将第二个参数设置为base=2,将二进制的数转化为十进制即转换为整型。i

参考资料:
https://www.cnblogs.com/gaizai/p/4233780.html

你可能感兴趣的:(python,python)