Python中二进制转换
1.10进制转换为其他进制方法一:函数十进制转二进制:bin(10) --> ‘0b1010’tpye:是字符串类型 0b:表示2进制十进制转八进制:oct(10)–> ‘0o12’tpye:是字符串类型0o:表示8进制 十进制转十六进制:hex(10) --> ‘0xa’tpye:是字符串类型 0x:表示16进制方法二:format‘{:b}’.format(9)‘1001’‘
1.10进制转换为其他进制
方法一:函数
十进制转二进制:bin(10) --> ‘0b1010’
tpye:是字符串类型 0b:表示2进制 十进制转八进制:oct(10)
–> ‘0o12’ tpye:是字符串类型
0o:表示8进制 十进制转十六进制:hex(10) --> ‘0xa’ tpye:是字符串类型 0x:表示16进制
方法二:format
‘{:b}’.format(9)
‘1001’
‘{: o}’.format(9)
‘11’‘{:x}’.format(10)
‘a’
2.其他转换为10进制:
方法一:int()函数 int(‘0b1010’,2) --> 10 或者 int(‘1010’,2) --> 10
int(‘0o12’,8) --> 10 或者 int(‘12’,8) --> 10 int(‘0xa’,16) --> 10
或者 int(‘a’,16) --> 10 备注:int(x,y)括号中x是需要转换的数值type必须是字符串,y是当前进制数 方法二:
eval函数eval(‘1111’) 1111
eval(‘0b1111’) 15
eval(‘0o1111’) 585
eval(‘0x1111’) 4369 备注:type必须是str且前面的进制标志(0b,0o,0x)不可少
3.将十进制转换为固定长度的多进制类型:
方法一:
‘{:08b}’.format(9)
‘00001001’‘{:06o}’.format(9)
‘000011’‘{:06x}’.format(9)
‘000009’
备注:’{:08b}’.format(9) # :b表示转换为二进制,08表示高位用0补够8位
方法二:a =bin(5)[2:]
print(a)
101c = str.zfill(a,8)
print©
00000101a =oct(9)[2:]
print(a)
11c = str.zfill(a,8)
print©
00000011a =hex(20)[2:]#去掉前面0b
print(a)
14a =hex(20)
a
‘0x14’str.zfill(a,8)
‘00000x14’
更多推荐
所有评论(0)