文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python中的binascii模块如何使用

2023-06-30 13:22

关注

这篇文章主要介绍“Python中的binascii模块如何使用”,在日常操作中,相信很多人在Python中的binascii模块如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中的binascii模块如何使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

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码45print(b)  # 与b2a_hex相反,打印出:b'BE27E8FFFF010203'print(binascii.a2b_hex(b))  # 这个功能和b2a_hex()一样# 打印出:b'42453237453846464646303130323033',例如B对应ascii码42,E对应ascii码45c = binascii.hexlify(a)print(c) # 这个功能和a2b_hex()一样,打印出:b'BE27E8FFFF010203'print(binascii.unhexlify(c))

 Python内置函数

#把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(88)'0b1011000'>>> bin(33)'0b100001'oct():把十进制转换成八进制字符#把十进制转换成八进制>>> oct(500)'0764'>>> oct(488)'0750'
#把一个整形转换成ASCII码表中对应的单个字符>>> chr(98)'b'>>> chr(97)'a'ord():和chr相反,把ASCII码表中的字符转换成对应的整形>>> ord('b')98>>> ord('c')99

到此,关于“Python中的binascii模块如何使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯