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通过装饰器检查函数参数数据类型的方法
Mar 13 Python
Python中endswith()函数的基本使用
Apr 07 Python
Python程序中使用SQLAlchemy时出现乱码的解决方案
Apr 24 Python
Python使用CMD模块更优雅的运行脚本
May 11 Python
Python基础入门之seed()方法的使用
May 15 Python
举例讲解Python中metaclass元类的创建与使用
Jun 30 Python
python pyheatmap包绘制热力图
Nov 09 Python
python读取目录下最新的文件夹方法
Dec 24 Python
Django中使用session保持用户登陆连接的例子
Aug 06 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
Feb 29 Python
Python关于OS文件目录处理的实例分享
May 23 Python
Python pandas读取CSV文件的注意事项(适合新手)
Jun 20 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代码
2008/09/10 PHP
PHP中的生成XML文件的4种方法分享
2012/10/06 PHP
php获取系统变量方法小结
2015/05/29 PHP
PHP新特性详解之命名空间、性状与生成器
2017/07/18 PHP
PHP实现笛卡尔积算法的实例讲解
2019/12/22 PHP
javascript中的float运算精度实例分析
2010/08/21 Javascript
JQuery 选择和过滤方法代码总结
2010/11/19 Javascript
有关js的变量作用域和this指针的讨论
2010/12/16 Javascript
在jQuery 1.5中使用deferred对象的代码(翻译)
2011/03/10 Javascript
在Windows上安装Node.js模块的方法
2011/09/25 Javascript
JS动态调用方法名示例介绍
2013/12/18 Javascript
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效
2015/09/24 Javascript
jquery使用on绑定a标签无效 只能用live解决
2016/06/02 Javascript
用JS实现轮播图效果(二)
2016/06/26 Javascript
两行代码轻松搞定JavaScript日期验证
2016/08/03 Javascript
jQuery插件fullPage.js实现全屏滚动效果
2016/12/02 Javascript
深入学习 JavaScript中的函数调用
2017/03/23 Javascript
js中时间格式化的几种方法
2018/07/22 Javascript
Javascript迭代、递推、穷举、递归常用算法实例讲解
2019/02/01 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
python中尾递归用法实例详解
2015/04/28 Python
Python实现控制台进度条功能
2016/01/04 Python
Python实现多级目录压缩与解压文件的方法
2018/09/01 Python
Django中ORM外键和表的关系详解
2019/05/20 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
使用matplotlib动态刷新指定曲线实例
2020/04/23 Python
python实现杨辉三角的几种方法代码实例
2021/03/02 Python
英国Boots旗下太阳镜网站:Boots Designer Sunglasses
2018/07/07 全球购物
JavaScript实现页面动态验证码的实现示例
2021/03/23 Javascript
春季防火方案
2014/05/10 职场文书
校园文明标语
2014/06/13 职场文书
自考生自我评价
2019/06/21 职场文书
深入理解Pytorch微调torchvision模型
2021/11/11 Python
MySql重置root密码 --skip-grant-tables
2022/04/11 MySQL