python用字节处理文件实例讲解

 更新时间:2021年04月13日 08:20:50   作者:小妮浅浅  
在本篇文章里小编给大家整理的是一篇关于python用字节处理文件实例讲解内容,有兴趣的朋友们可以学习参考下。

1、可以在mode参数中添加'b'字符。所有适合文件对象的相同方法。然而,每种方法都希望并返回一个bytes对象。

>>> with open(`dog_breeds.txt`, 'rb') as reader:
>>>     print(reader.readline())
b'Pug\n'

2、当打开文件并单独阅读这些字节时,可以看到它确实是一个png文件:

>>> with open('jack_russell.png', 'rb') as byte_reader:
>>>     print(byte_reader.read(1))
>>>     print(byte_reader.read(3))
>>>     print(byte_reader.read(2))
>>>     print(byte_reader.read(1))
>>>     print(byte_reader.read(1))
b'\x89'
b'PNG'
b'\r\n'
b'\x1a'
b'\n'

知识点扩展:

读取文件的字节流数据,将其转换为十六进制数据

def read_file():
    with open('./flag.zip','rb') as file_byte:
        file_hex = file_byte.read().hex()
        print(file_hex)
        write_file(file_hex)

def write_file(file_hex):
    with open('new.txt','w') as new_file:
        new_file.write(file_hex)

if __name__ == '__main__':
    read_file()

读取文件的字节流数据,将其编码为base64并输出

import base64

def read_file():
    with open('./flag.zip','rb') as file_byte:
        file_base64 = base64.b64encode(file_byte.read())
        print(file_base64)

if __name__ == '__main__':
    read_file()

将十六进制文件转化为字节流文件写入

import struct

a = open("str.txt","r")#十六进制数据文件
lines = a.read()
res = [lines[i:i+2] for i in range(0,len(lines),2)]

with open("xxx.xxx","wb") as f:
	for i in res:
		s = struct.pack('B',int(i,16))
		f.write(s)

以上就是python用字节处理文件实例讲解的详细内容,更多关于python使用字节处理文件的资料请关注脚本之家其它相关文章!

相关文章

  • Python基础之pandas数据合并

    Python基础之pandas数据合并

    这篇文章主要介绍了Python基础之pandas数据合并,文中有非常详细的代码示例,对正在学习python基础的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • 解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题

    解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题

    这篇文章主要介绍了解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • django 实现后台从富文本提取纯文本

    django 实现后台从富文本提取纯文本

    这篇文章主要介绍了django 实现后台从富文本提取纯文本,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • python实现简单五子棋小游戏

    python实现简单五子棋小游戏

    这篇文章主要为大家详细介绍了python实现简单五子棋小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • python3实现公众号每日定时发送日报和图片

    python3实现公众号每日定时发送日报和图片

    这篇文章主要为大家详细介绍了python3实现公众号每日定时发送日报和图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • python使用numpy实现直方图反向投影示例

    python使用numpy实现直方图反向投影示例

    今天小编就为大家分享一篇python使用numpy实现直方图反向投影示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • 基于Python3 逗号代码 和 字符图网格(详谈)

    基于Python3 逗号代码 和 字符图网格(详谈)

    下面小编就为大家带来一篇基于Python3 逗号代码 和 字符图网格(详谈)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • python如何将多个映射合并为一个映射

    python如何将多个映射合并为一个映射

    ChainMap类是Python中collections模块的一部分,用于将多个字典合并为一个映射,而不会在物理上合并字典,这使得字典中相同的键可以共存,输出结果取决于键的检索顺序,ChainMap通过维护一个底层映射的列表,重定义字典操作来实现这一功能
    2024-09-09
  • Python Pandas中DataFrame.drop_duplicates()删除重复值详解

    Python Pandas中DataFrame.drop_duplicates()删除重复值详解

    在实际处理数据中,数据预处理操作中,常常需要去除掉重复的数据,这篇文章主要给大家介绍了关于Python Pandas中DataFrame.drop_duplicates()删除重复值的相关资料,需要的朋友可以参考下
    2022-07-07
  • python opencv之SURF算法示例

    python opencv之SURF算法示例

    这篇文章主要介绍了python opencv之SURF算法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02

最新评论