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中的函数编程
Apr 13 Python
Django中redis的使用方法(包括安装、配置、启动)
Feb 21 Python
python实现黑客字幕雨效果
Jun 21 Python
python3+opencv3识别图片中的物体并截取的方法
Dec 05 Python
手把手教你pycharm专业版安装破解教程(linux版)
Sep 26 Python
Python实现打印实心和空心菱形
Nov 23 Python
Tensorflow中tf.ConfigProto()的用法详解
Feb 06 Python
使用Python和百度语音识别生成视频字幕的实现
Apr 09 Python
Pandas的Apply函数具体使用
Jul 21 Python
Python浮点型(float)运算结果不正确的解决方案
Sep 22 Python
Python pathlib模块使用方法及实例解析
Oct 05 Python
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
Apr 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
让CodeIgniter数据库缓存自动过期的处理的方法
2014/06/12 PHP
php中magic_quotes_gpc对unserialize的影响分析
2014/12/16 PHP
smarty模板引擎之内建函数用法
2015/03/30 PHP
php使用post数组的键值创建同名变量并赋值的方法
2015/04/03 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
从sohu弄下来的flash中展示图片的代码
2007/04/27 Javascript
js数组去重的5种算法实现
2015/11/04 Javascript
javascript弹出窗口实现代码
2015/11/12 Javascript
Node.js操作mysql数据库增删改查
2016/03/30 Javascript
js实现千分符和保留几位小数的简单实例
2016/08/01 Javascript
jQuery插件zTree实现清空选中第一个节点所有子节点的方法
2017/03/08 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
微信小程序学习之数据处理详解
2017/07/05 Javascript
Javascript实现基本运算器
2017/07/15 Javascript
一步步教会你微信小程序的登录鉴权
2018/04/09 Javascript
JS引用传递与值传递的区别与用法分析
2018/06/01 Javascript
详解如何用VUE写一个多用模态框组件模版
2018/09/27 Javascript
基于vue通用表单解决方案的思考与分析
2019/03/16 Javascript
layui table 列宽百分比显示的实现方法
2019/09/28 Javascript
JS+CSS实现随机点名(实例代码)
2019/11/04 Javascript
Vuex的API文档说明详解
2020/02/05 Javascript
vue使用openlayers实现移动点动画
2020/09/24 Javascript
python实现获取Ip归属地等信息
2016/08/27 Python
解决Spyder中图片显示太小的问题
2018/04/27 Python
pyqt 实现在Widgets中显示图片和文字的方法
2019/06/13 Python
在Python3 numpy中mean和average的区别详解
2019/08/24 Python
python判断all函数输出结果是否为true的方法
2020/12/03 Python
Tory Burch美国官方网站:美国时尚生活品牌
2016/08/01 全球购物
洲际酒店集团大中华区:IHG中国
2016/08/17 全球购物
香港家用健身器材、运动器材及健康美容仪器专门店:FitBoxx
2019/12/05 全球购物
华为c/c++笔试题
2016/01/25 面试题
商铺租赁意向书
2014/04/01 职场文书
十佳护士先进事迹
2014/05/08 职场文书
2015年音乐教研组工作总结
2015/07/22 职场文书
Python 流媒体播放器的实现(基于VLC)
2021/04/28 Python
浅谈Redis中的RDB快照
2021/06/29 Redis