Python中模块的使用--binascii模块用法
作者:范翻番樊 时间:2022-11-16 13:53:16
binascii模块用法
binascii模块用于在二进制和ASCII之间转换
>> import binascii
# 将binary 转ascii并用十六进制表示
>> str1 = b"hello world"
>> binascii.b2a_hex(b"hello world")
# 输出 b'68656c6c6f20776f726c64'
# 相反操作
>> binascii.a2b_hex(b'68656c6c6f20776f726c64')
# 输出b'hello world'
>> binascii.hexlify(b"hello world") # 注解: 同b2a_hex(), 返回二进制 data 的十六进制表示。 data 的每个字节都转换为相应的2位十六进制表示。因此返回的字节对象的长度是 data 的长度的两倍。
# 输出 b'68656c6c6f20776f726c64'
>> binascii.unhexlify(b'68656c6c6f20776f726c64') # 注解: 同a2b_hex(), 返回由十六进制字符串 hexstr 表示的二进制数据。 hexstr 必须包含偶数个十六进制数字(可以是大写或小写),否则会引发 Error 异常。
# 输出b'hello world'
binascii模块和进制转换笔记
废话少说,直接上代码:
# !/usr/bin/env python
# -*- coding:utf-8 -*-
# author:大西瓜
# 导入binascii模块
import binascii
a = b'BE27E8FFFF010203'
# 先把b'BE27E8FFFF010203'转换成二进制数据然后在用十六进制表示
b = binascii.b2a_hex(a)
# 打印出:b'42453237453846464646303130323033',例如B对应ascii码42,E对应ascii码45
print(b)
# 与b2a_hex相反,打印出:b'BE27E8FFFF010203'
print(binascii.a2b_hex(b))
# 这个功能和b2a_hex()一样
# 打印出:b'42453237453846464646303130323033',例如B对应ascii码42,E对应ascii码45
c = binascii.hexlify(a)
print(c)
# 这个功能和a2b_hex()一样,打印出:b'BE27E8FFFF010203'
print(binascii.unhexlify(c))
Python内置函数
hex()
:十进制转十六进制
#把10进制转整形换成16进制
>>> hex(88)
'0x58'
#把浮点型转换成16进制
>>> 1.23.hex()
'0x1.3ae147ae147aep+0'
#内置函数hex和binascii.hexlify()的区别就在于,
#hex只能接受整形不能接受字符串
>>> hex('88')
Traceback (most recent call last):
File "<pyshell#26>", line 1, in <module>
hex('88')
TypeError: hex() argument can't be converted to hexbin():ba
bin()
:把十进制整形转换成二进制字符
#把十进制整型转换成二进制
>>> bin(88)
'0b1011000'
>>> bin(33)
'0b100001'
oct():把十进制转换成八进制字符
#把十进制转换成八进制
>>> oct(500)
'0764'
>>> oct(488)
'0750'
chr()
:把一个整形转换成ASCII码表中对应的单个字符
#把一个整形转换成ASCII码表中对应的单个字符
>>> chr(98)
'b'
>>> chr(97)
'a'
ord():和chr相反,把ASCII码表中的字符转换成对应的整形
>>> ord('b')
98
>>> ord('c')
99
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
来源:https://blog.csdn.net/u011361138/article/details/82428403
标签:Python,模块,binascii
0
投稿
猜你喜欢
小三角的做法与使用
2008-10-08 10:25:00
python实现感知器
2021-03-18 09:12:13
MySql用DATE_FORMAT截取DateTime字段的日期值
2024-01-14 02:48:22
使用DataFrame删除行和列的实例讲解
2021-03-05 21:06:04
轻松掌握python设计模式之访问者模式
2023-06-30 13:46:39
全新极速CSS选择器引擎whiz
2009-08-30 15:48:00
pytorch超详细安装教程之Anaconda、PyTorch和PyCharm全套安装流程
2023-12-23 15:27:50
Golang如何读取单行超长的文本详解
2024-05-10 13:57:21
详解django中url路由配置及渲染方式
2021-04-29 01:28:50
asp中数组的用法
2008-05-12 22:29:00
vuejs实现ready函数加载完之后执行某个函数的方法
2024-05-29 22:48:43
python包的导入方式总结
2021-01-18 08:55:23
将设计执行到底—记Qzone项目组视觉设计标注的前前后后
2009-04-19 13:22:00
asp如何编写一个最简单的聊天程序?
2009-11-08 19:04:00
Python堆排序原理与实现方法详解
2021-02-22 15:07:31
Pandas常用累计、同比、环比等统计方法实践过程
2021-03-13 01:48:36
pandas中按行或列的值对数据排序的实现
2023-09-23 02:32:18
微信小程序实现上传视频功能
2023-08-24 16:18:42
Javascript 获取css属性
2009-05-31 16:49:00
Python 绘制酷炫的三维图步骤详解
2022-08-28 21:07:08