def sto2(d):
if d == 0:
return '0' #处理输入的是0的情况游启首
sign = ''
if d <0:
d = -d
sign = '-'#转换输入的是负数的情况
旁姿 b = ''
while d != 0:
b = str(d % 2) + b
d = d // 2
return sign + b
d = int(input('要转换的十进制数是:'))
print('对应的二进制结果为'+sto2(d))
执行测试一下神数:
要转换的十进制数是:28
对应的二进制结果为11100
要转换的十进制数是:-66
对应的二进制结果为-1000010
_______________END______________
1、将十进制转换成二进制,利用bin()方法。
2、获取亏迹二进制数据的长度袭铅。
3、to_bytes(),byteorder为little>>>(2048).to_bytes(2,byteorder='little')b'\x00\x08'。
4、使用to_bytes()方法,byteorder为big。
5、添加signed=True属性>>>(-10240).to_bytes(10,byteorder='拍空好little',signed=True)。
6、利用bit_length()方法>>>A3=45125656>>>A3.to_bytes((A3.bit_length()+7) // 8,byteorder='big')。就完成了。
把十六进制的字串转为十进制数字:Python代明氏码
>>>
int('ff',
16)
255
>>>
int('ff',
16)
255
把十进制数字转换为以十六进制表示之字串,可调用内置的hex()函数:
Python代码
>>>
hex(255)
0xff
>>>
hex(255)
0xff
调用BinAscii模块其中的b2a_hex()函数,可把以ASCII编汪槐宴码的文字以十六困银进制表示:
Python代码
>>>
binascii.b2a_hex('A')
41
>>>
binascii.b2a_hex('A')
41
反之也可把以十六进制表示的文字,换成以ASCII编码的文字:
Python代码
>>>print
binascii.a2b_hex('41')
“A”
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)