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


Posted in Python onApril 13, 2021

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 相关文章推荐
Python中异常重试的解决方案详解
May 05 Python
基于DataFrame筛选数据与loc的用法详解
May 18 Python
pytorch 转换矩阵的维数位置方法
Dec 08 Python
详解python的argpare和click模块小结
Mar 31 Python
详解PyCharm安装MicroPython插件的教程
Jun 24 Python
Python识别快递条形码及Tesseract-OCR使用详解
Jul 15 Python
Python高级编程之继承问题详解(super与mro)
Nov 19 Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 Python
python 实现任务管理清单案例
Apr 25 Python
Python垃圾回收机制三种实现方法
Apr 27 Python
关于python中导入文件到list的问题
Oct 31 Python
python 爬取百度文库并下载(免费文章限定)
Dec 04 Python
Python中相见恨晚的技巧
Apr 13 #Python
利用python做表格数据处理
python glom模块的使用简介
Apr 13 #Python
Python的flask接收前台的ajax的post数据和get数据的方法
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
python实现简单反弹球游戏
python中Tkinter 窗口之输入框和文本框的实现
Apr 12 #Python
You might like
php+ajax无刷新上传图片实例代码
2015/11/17 PHP
详解WordPress中的头像缓存和代理中的缓存更新方法
2016/03/01 PHP
PHP简单预防sql注入的方法
2016/09/27 PHP
Yii框架日志记录Logging操作示例
2018/07/12 PHP
javascript编程起步(第五课)
2007/01/10 Javascript
javascript 定义初始化数组函数
2009/09/07 Javascript
js 编写规范
2010/03/03 Javascript
JavaScript中的排序算法代码
2011/02/22 Javascript
js实现照片墙功能实例
2015/02/05 Javascript
关于验证码在IE中不刷新的快速解决方法
2016/09/23 Javascript
基于JavaScript实现窗口拖动效果
2017/01/18 Javascript
Angularjs添加排序查询功能的实例代码
2017/10/24 Javascript
Vue实现动态创建和删除数据的方法
2018/03/17 Javascript
js实现简单掷骰子小游戏
2019/10/24 Javascript
[39:00]Optic vs VP 2018国际邀请赛淘汰赛BO3 第三场 8.24
2018/08/25 DOTA
[01:44]Ti10举办地公布
2019/08/25 DOTA
python使用pyhook监控键盘并实现切换歌曲的功能
2014/07/18 Python
Python的迭代器和生成器使用实例
2015/01/14 Python
使用Python脚本来控制Windows Azure的简单教程
2015/04/16 Python
Python引用类型和值类型的区别与使用解析
2017/10/17 Python
Python解析命令行读取参数之argparse模块
2019/07/26 Python
Python实现时间序列可视化的方法
2019/08/06 Python
numpy.transpose()实现数组的转置例子
2019/12/02 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
全球速卖通巴西站点:Aliexpress巴西
2016/08/24 全球购物
Michael Kors加拿大官网:购买设计师手袋、手表、鞋子、服装等
2019/03/16 全球购物
后勤岗位职责
2013/11/26 职场文书
应用心理学个人求职信范文
2013/12/11 职场文书
大型活动策划方案
2014/01/12 职场文书
九年级体育教学反思
2014/01/23 职场文书
推荐信格式要求
2014/05/09 职场文书
领导班子自我剖析材料
2014/08/16 职场文书
我们的节日中秋活动方案
2014/08/19 职场文书
2015年世界环境日活动总结
2015/02/11 职场文书
2015新员工工作总结范文
2015/10/15 职场文书
幼儿园教师教学反思
2016/03/02 职场文书