从二进制字符串到十六进制转换的Python [英] Python conversion from binary string to hexadecimal

查看:1184
本文介绍了从二进制字符串到十六进制转换的Python的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我怎么能执行一个二进制字符串的转换在Python相应的十六进制值?

0000 0100 1000 1101 ,我想获得 048D 我使用Python 2.6。


解决方案

欢迎计算器!

INT 定基2,然后十六进制

 >>> INT('010110',2)
22
>>>六角(INT('010110',2))
0x16
>>>>>>六角(INT('0000010010001101',2))
0x48d

的文档 INT


  INT(X [,基地]) -  GT;整数转换一个字符串或数字为整数,如果可能的话。一个浮动


  
  


      参数将趋向于零被截断(不包括字符串
      再一个浮点数presentation!)当转换为字符串,
  使用
      可选的基地。一个转换时,它是提供一个基础的错误
      非字符串。如果碱是零,适当的碱猜到基于所述
      字符串内容。如果参数是整数范围之外
      长的物体将被替代返回。


的文档十六进制


 十六进制(数字) -  GT;串返回一个整数或长的十六进制再presentation


  
  

整数。


How can I perform a conversion of a binary string to the corresponding hex value in Python?

I have 0000 0100 1000 1101 and I want to get 048D I'm using Python 2.6.

解决方案

Welcome to StackOverflow!

int given base 2 and then hex:

>>> int('010110', 2)
22
>>> hex(int('010110', 2))
'0x16'
>>> 

>>> hex(int('0000010010001101', 2))
'0x48d'

The doc of int:

int(x[, base]) -> integer

Convert a string or number to an integer, if possible.  A floating

point argument will be truncated towards zero (this does not include a string representation of a floating point number!) When converting a string, use the optional base. It is an error to supply a base when converting a non-string. If base is zero, the proper base is guessed based on the string content. If the argument is outside the integer range a long object will be returned instead.

The doc of hex:

hex(number) -> string

Return the hexadecimal representation of an integer or long

integer.

这篇关于从二进制字符串到十六进制转换的Python的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆