二进制文件|学习笔记

简介: 快速学习 二进制文件

开发者学堂课程【Python 语言基础 3:函数、面向对象、异常处理二进制文件】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/601/detail/8772


二进制文件


内容介绍:

一、引入

二、读取模式

三、写出读取内容

 

 

一、引入

现在要读取桌面上一个文件:

输入:

file_name = 'c : /Users/lilichao/Desktop/告白气球.flac '

with open(file_name , 'r ') as file_obj:

print(file_obj.read( ) )

结果如下:会报错,无法读

 

注意:

要读的 flac 是一个音乐文件,默认读取文件时,是当作文本文件读,而不是文本文件的文件统称为二进制文件

 

二、读取模式

t 读取文本文件(默认值)

with open(file_name , 'r ') as file_obj 只写 r 和 rt 是一样的

with open(file_name , 'rt') as file_obj

读取文本文件时, size 是以字符为单位的

 

b 读取二进制文件

with open(file_name , 'rb ') as file_obj

读取二进制文件时,size 是以字节为单位

该文件过大,不宜一次性读取,需要分段读

输入:print(file_obj.read(100) )

 

三、写出读取内容

定义一个新的文件

new_name = 'aa.flac'

with open(new_name , 'wb ') as new_obj:

#定义每次读取的大小

 

chunk = 1024*100

while True: #从已有的对象中读取数据

content = file_obj.read( chunk )

#内容读取完毕,终止循环

if not content :

break

#将读取到的数据写入到新对象中

 new_obj.write(content)

执行看到多出一个文件

点开后可以播放。

相关文章
|
测试技术 Python
Appium自动化框架从0到1之 执行测试用例& 生成测试报告&发送邮件
Appium自动化框架从0到1之 执行测试用例& 生成测试报告&发送邮件
341 1
|
缓存 Java 开发工具
【开发工具】Gradle的安装 与 配置环境变量
【开发工具】Gradle的安装 与 配置环境变量
637 0
|
5月前
|
敏捷开发 监控 数据可视化
提升开发团队效率:2025年最受欢迎的IT开发进度工具选型推荐
在科技快速发展的背景下,高效管理软件开发进度成为团队成功的关键。本文深入解析IT开发进度工具的核心原理,结合7款主流工具的功能与适用场景,为不同规模的开发团队提供科学选型建议,助力提升项目管理效率和团队协作水平。
|
9月前
|
Linux 数据库 Perl
【YashanDB 知识库】如何避免 yasdb 进程被 Linux OOM Killer 杀掉
本文来自YashanDB官网,探讨Linux系统中OOM Killer对数据库服务器的影响及解决方法。当内存接近耗尽时,OOM Killer会杀死占用最多内存的进程,这可能导致数据库主进程被误杀。为避免此问题,可采取两种方法:一是在OS层面关闭OOM Killer,通过修改`/etc/sysctl.conf`文件并重启生效;二是豁免数据库进程,由数据库实例用户借助`sudo`权限调整`oom_score_adj`值。这些措施有助于保护数据库进程免受系统内存管理机制的影响。
|
存储 关系型数据库 MySQL
深入解析 MySQL 中的扩展
【8月更文挑战第31天】
316 0
|
10月前
|
搜索推荐 数据挖掘
优质网络舆情监测系统大盘点
一款出色的网络舆情监测系统,不仅能够助力相关主体迅速捕捉舆情信息,有效应对危机,还能够助力其更好地把握舆论动态,维护自身形象。那么,市场上有哪些比较好的网络舆情监测系统呢?这里,本文有为各位整理了一些好用的舆情检测系统,以供各位参考!
464 0
|
中间件 数据挖掘 API
ERP系统的系统集成与接口管理:实现高效协同
【7月更文挑战第29天】 ERP系统的系统集成与接口管理:实现高效协同
1223 0
|
JavaScript 小程序 Java
交通管理|交通管理在线服务系统|基于Springboot的交通管理系统设计与实现(源码+数据库+文档)
交通管理|交通管理在线服务系统|基于Springboot的交通管理系统设计与实现(源码+数据库+文档)
250 0
|
存储 Java API
【网安AIGC专题11.7】17ASAP如何更好地改进少样本提示:在LLMs的prompt中添加语义信息,来提高代码摘要生成+代码补全任务的性能。CodeSearchNet数据集(下)
【网安AIGC专题11.7】17ASAP如何更好地改进少样本提示:在LLMs的prompt中添加语义信息,来提高代码摘要生成+代码补全任务的性能。CodeSearchNet数据集(下)
470 0
|
Unix Java Linux
C语言的起源和简介
C语言是1972年由美国的Dennis Ritchie设计发明的,并首次在UNIX操作系统的DEC PDP-11 计算机上使用。
680 0