Python语言把二进制转成十六进制

0 Preface/Foreword

0.1 10进制转其他进制

  • bin()
  • oct()
  • hex()

0.2 其他进制转10进制

  • int(, 2)
  • int(, 8)
  • int(, 16)

1 转换方法

1.1 方法1

先将二进制转成10进制,再将10进制转成16进制

decim = int('00000101', 2)

hexadecim = hex(decim)

print hexadecim

1.2 方法2

import binascii

binary_data = b"\x01\02\03\04\05"

hex_data = binascii.hexlify(binary_data)

hex_data_ascii = binascii.hexlify(binary_data).decode("utf-8")

print hex_data

print hex_data_ascii

解析:

  • binary_data:二进制数据
  • binascii.hexlify:转成成16进制
  • hexlify:返回字节类型
  • decode:字符串类型

1.3 2.x和3.x的差异性

++源码++:

python 复制代码
#! /usr/bin/python
#coding:utf-8
import binascii

bin_file="test.bin"
file_mode = "rb"



if __name__ == "__main__":
    print("This is main module ..")
    fd = open(bin_file, file_mode)
    binary_data = fd.read()
    
    print("0x%02x"%binary_data[0])

    print (binary_data[0])
    print (type(binary_data[0]))

++2.x运行结果++:

++3.x运行结果++:

相关推荐
秀儿还能再秀27 分钟前
机器学习——简单线性回归、逻辑回归
笔记·python·学习·机器学习
阿_旭1 小时前
如何使用OpenCV和Python进行相机校准
python·opencv·相机校准·畸变校准
幸运的星竹1 小时前
使用pytest+openpyxl做接口自动化遇到的问题
python·自动化·pytest
kali-Myon3 小时前
ctfshow-web入门-SSTI(web361-web368)上
前端·python·学习·安全·web安全·web
B站计算机毕业设计超人3 小时前
计算机毕业设计Python+大模型农产品价格预测 ARIMA自回归模型 农产品可视化 农产品爬虫 机器学习 深度学习 大数据毕业设计 Django Flask
大数据·爬虫·python·深度学习·机器学习·课程设计·数据可视化
布鲁格若门3 小时前
AMD CPU下pytorch 多GPU运行卡死和死锁解决
人工智能·pytorch·python·nvidia
AI原吾3 小时前
探索 Python HTTP 的瑞士军刀:Requests 库
开发语言·python·http·requests
single_ffish4 小时前
XPath:网络爬虫中的数据提取利器
爬虫·python