2018-07-17 python进制转换

数据在计算机中的存储,存的都是二进制数

1.认识十进制、二进制、八进制、十六进制

1.十进制
基数:0,1,2,3,4,5,6,7,8,9
特点:逢10进1 10 ---> 10
12345 = 5+40+300+2000+10000
= 51 + 410 + 3100 + 21000+110000
= 5
(10^0) + 4(10^1)+3(102)+2*(103)+1*(10^4)

2.二进制
基数:0,1
特点:逢2进1 10 ---> 2
101011 = 1(2^0)+1(21)+0*(22)+1(2^3)+0(24)+1*(25)
= 1 + 2 + 8 + 32
= 43

3.八进制
基数:0,1,2,3,4,5,6,7
特点:逢8进1 12 ---> 10
24 = 4(8^0) + 2(8^1) = 20

4.十六进制
基数:0-9,a-f(A-F) -- a=10,b=11,c=12,d=13,e=14,f=15
特点:逢16进1 a ---> 10
2f = 47

进制间的转换:

十进制转换成其他进制:整除取余法(下到上所有余数)
八进制转二进制:一位八进制转换成三位二进制 --> 23 = 010 011
十六进制转二进制:一位十六进制抓换成四位的二进制 --> 2f = 0010 1111

2.python中的二进制、八进制和十六进制

python默认的数字都是10进制

a.二进制

基数是0,1,并且数字前加前缀0b表示二进制
0b1101
0b1234 # 报错 SyntaxError

bin(整数) -> 将其他进制的整数转换成二进制数

print(bin(10))  
print(bin(0x10))

b.八进制

基数是0-7,并且数字前加0o或者0O表示八进制
0o176
0O123

oct(整数) -> 将其他进制的整数转换成八进制

print(oct(10))

c.十六进制

基数0-9,a-f(A-F),并且数字前加0x或者0X表示十六进制
0x1a
0X2af

hex(整数) -> 将其他进制的整数转换成十六进制

print(hex(10))

你可能感兴趣的:(2018-07-17 python进制转换)