Python合并文件(dat、mdf、mf4)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


石门中断平湖出,百丈金潭照云日。     《和卢侍御通塘曲》


文章目录

  • Python 合并mf4文件
    • 1. 安装asammdf库
    • 2. 准备mf4文件
    • 3. 合并代码
      • 3.1 引入asammdf库
      • 3.2 读取文件
      • 3.3 合并文件
    • 4. 合并mf4文件示例代码
      • 4.1 示例代码
      • 4.2 执行结果
      • 4.3 生成文件
    • 5. 合并多个文件
      • 5.1 合并代码
      • 5.2 输出结果
      • 5.3 文件生成
    • 6. 示例代码下载


Python 合并mf4文件

使用asammdf库实现mf4合并

1. 安装asammdf库

安装库

pip install asammdf

2. 准备mf4文件

准备好mf4文件,最好放在一个文件夹下
在这里插入图片描述

3. 合并代码

3.1 引入asammdf库

引入asammdf库

from asammdf import MDF

3.2 读取文件

读取文件使用MDF对象将文件转换为mdf对象

mdf = MDF(mdf文件路径)

mdf文件可以是dat文件、mdf文件、mf4文件
分别为mdf文件的二代、三代、四代

3.3 合并文件

文件合并使用的方法是MDF的concatenate函数

new_mdf = MDF([mdf对象1,mdf对象2])

4. 合并mf4文件示例代码

4.1 示例代码

合并两个mf4文件的代码实现

from asammdf import MDFprint("合并开始=================》")# 文件路径
mf4_file_path1 = r"F:\\STUDY\\Python\\file_merge\\mdf\\test_file_01.mf4"
# 读取文件
mdf1 = MDF(mf4_file_path1)
# 文件路径
mf4_file_path2 = r"F:\\STUDY\\Python\\file_merge\\mdf\\test_file_02.mf4"
# 读取文件
mdf2 = MDF(mf4_file_path2)# 将读取的文件存入列表
mdf_list = []
mdf_list.append(mdf1)
mdf_list.append(mdf2)# 调用函数合并列表中的文件
new_mdf = MDF.concatenate(mdf_list)# 定义合并后的文件路径和文件名
new_name = "./concate.mf4"# 保存合并后的文件
new_mdf.save(new_name, overwrite=True)print("合并结束=================》")

4.2 执行结果

执行代码,输出结果如下
在这里插入图片描述

4.3 生成文件

在当前文件夹下生成文件concate.mf4
在这里插入图片描述

5. 合并多个文件

上面是两个文件进行合并,根据上面的代码,优化一下,合并多个文件

5.1 合并代码

合并多个文件的示例代码

import os
from asammdf import MDFprint("合并开始=================》")# 需要合并的文件所在的文件夹
folder = "./mdf"
# 用于存储所要合并的文件的路径列表
full_path_list = []
# 遍历文件夹并将文件的路径存入列表中
for root, dirs, files in os.walk(folder):print("root: ", root)print("dirs: ", dirs)print("files: ", files)# 当前位置所在的全路径print(os.getcwd())for file in files:# 文件的全路径合成full_path = os.path.join(os.getcwd(), "mdf", file)# print(full_path)# 放入列表中full_path_list.append(full_path)# 用于存储转换后的MDF对象的列表
mdf_list = []
# 遍历需要合成的文件列表,将每个文件转为MDF类型对象
for file_path in full_path_list:# 将文件转为MDF对象mdf_file = MDF(file_path)# 将对象放入列表mdf_list.append(mdf_file)# 合并文件,产生新的MDF对象
new_mdf = MDF.concatenate(mdf_list)
# 定义新文件存放路径
new_mdf_name = "new_mdf.mf4"
new_mdf_path = "./mdf/"
# 将mdf对象保存为新的mdf文件,如果重复则重写覆盖
new_mdf.save(new_mdf_path+new_mdf_name, overwrite=True)print("合并结束=================》")

5.2 输出结果

执行代码输出结果如下
在这里插入图片描述

5.3 文件生成

合并后,新的文件生成在当前位置的mdf文件夹下,文件名为new_mdf.mf4
在这里插入图片描述

6. 示例代码下载

本文示例代码已上传至CSDN资源库
下载地址:Python 文件合并 asammdf合并mf4文件


感谢阅读,祝君暴富!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/28213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx负载均衡之模块

1.服务器配置指令 Nginx 负载均衡是由代理模块和上游(upstream)模块共同实现的,Nginx 通过代理模块的反向代理功能将用户请求转发到上游服务器组,上游模块通过指定的负载均衡策略及相关的参数配置将用户请求转发到目标服务器上。上…

数据库回表及优化方法(附示例)

数据库回表及优化方法 什么是数据库回表如何优化回表1. 使用覆盖索引示例: 2. 减少查询列示例: 3. 适当增加索引示例: 4. 优化查询语句示例: 示例:优化回表的具体案例原始查询及索引:优化后的索引&#xff…

ThinkPHP 5.1.X 反序列化漏洞:深入分析与利用技巧

在Web应用开发中,框架的安全性至关重要。ThinkPHP作为广泛使用的PHP开发框架,其版本5.1.X中存在一个反序列化漏洞,允许攻击者执行任意代码。本文将深入分析该漏洞的原理、利用方法,并提供相应的防护措施。 漏洞背景 ThinkPHP 5.…

【three.js】设置canvas画布背景透明

通过Three.js渲染一个模型的时候,不希望canvas画布有背景颜色,也就是canvas画布完全透明,可以透过canvas画布看到画布后面叠加的HTML元素图文,呈现出来一种三维模型悬浮在网页上面的效果。 比如我们现在的模型背景是黑色的&#…

spring框架(SSM)

Spring Framework系统架构 Spring框架是一个开源的企业级Java应用程序框架,它为开发Java应用程序提供了一个全方位的解决方案。Spring的核心优势在于它的分层架构,这使得开发者可以灵活选择使用哪些模块而无需引入不需要的依赖。下面是Spring框架的一些关…

【每天学会一个渗透测试工具】AWVS安装及使用指南

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 ✨AWVS介绍 是应用漏洞扫描工具 💦使用docker安装 docker pull dockermi3aka/awvs启动镜像 docker run -dit …

数据采集项目1-用户行为数据同步

环境准备 linux配置、克隆103和104、编写集群分发脚本、ssh无密码登录配置、jdk安装、数据模拟集群日志数据输出脚本、xcall脚本、安装hadoop、zk安装、kafka安装、flume安装、mysql安装、maxwell安装、datax安装、hive安装 用户行为数据同步-总的数据流程图 第一层flume 数据…

Go基础编程 - 07 - 字典(map)及其约束

字典(map) 下一篇:结构体1. 声明2. nil 值字典3. 判断某个键是否存在4. 遍历5. delete() 删除键值对6. 约束7. 扩展 上一篇:指针 下一篇:结构体 map 是一种无序的基于 key-value 的数据结构,Go 语言中的 …

快速使用MetInfo搭建自己的官网

最近一直在找怎么样的开源项目可以用来搭建官网,不仅是个人官网还是企业官网,我发现使用MetInfo搭建官网非常适合,整体的步骤可以归纳为以下几步,我也一并描述清晰和准确: 准备域名和主机: 注册一个属于自…

JavaScript算法实现dfs查找省市区路径

需求 存在如下数组,实现一个算法通过输入区名,返回省->市->区格式的路径,例如输入西湖区,返回浙江省->杭州市->西湖区。 // 定义省市区的嵌套数组 const data [{name: "浙江省",children: [{name: "…

【百度智能体】零代码创建职场高情商话术助手智能体

一、前言 作为一个程序猿,工科男思维,走上职场后,总会觉得自己不会处理人际关系,容易背锅说错话,这时候如果有个助手能够时时刻刻提醒自己该如何说话如何做事情就好了。 而我们现在可以通过百度文心智能体平台构建各…

Pyinstaller 打包exe后,打开出现can‘t find package tkdnd 报错

这几天在用python做一个软件,过程中用到tkdnd这个模块 tkdnd 是一个用于 Tkinter 的拖放 (drag-and-drop) 扩展库,提供了在 Tkinter 应用程序中实现拖放功能的支持。Tkinter 是 Python 的标准 GUI 库,而 tkdnd 提供了额外的功能,…

Java基础——网络编程(一)

初识网络编程 网络编程:在网络通信协议下,不同计算机上运行的程序,进行的数据传输 应用场景:即时通信、网游对战、金融证券、国际贸易、邮件…… BS架构的优缺点: 1、不需要开发客户端,只需要页面服务端 2、…

计算机网络知识点全面总结回顾

物理层 OSI模型:数据链路层(流量控制),从传输层开始端到端;每一层的元素都称为实体,同一层的是对等实体;三个重要概念:服务(下层为上层提供调用)&#xff0c…

Python程序设计 2021秋计算和人工智能期中商科2

2021秋计算和人工智能期中商科2 第1关:矩形面积的计算 编写一个程序根据对角线长度和夹角度数计算矩形面积。 矩形面积如下所示 输入对角线长度和夹角度数,计算并显示矩形面积 要求结果显示两位小数 deval(input("对角线长度")) aeval(input(…

安全智能体的前沿技术研究与实践

安全底层技术演进经历了以下几个阶段:\n\n1. 规则驱动:在早期,安全技术主要依赖于人工编写的规则进行静态和动态分析,如基线核查规则、应用漏洞规则等。这种方式尽管在某些特定场景下有效,但面临着规则更新滞后和适应性…

1.Element的table表高度自适应vue3+js写法

解决方法 在页面table上添加id,动态计算每页table的最大高度 ,将高度保存在store中,每次切换路由时进行计算。 文章目录 解决方法前言一、页面table使用二、store状态库1.引入库 效果 前言 提示:状态管理使用的是pinia,用法参考…

腾讯云EdgeOne对比普通CDN的分别

EdgeOne架构图 普通CDN架构图 ​​​​​​​ 腾讯云EdgeOne对比普通CDN的不同点 服务范围和集成度 腾讯云EdgeOne是一体化的综合平台,不仅提供内容分发功能,还包括安全防护、性能优化和边缘计算等服务。EdgeOne提供了DDoS防护、WAF(Web应…

流媒体传输协议HTTP-FLV、WebSocket-FLV、HTTP-TS 和 WebSocket-TS的详细介绍、应用场景及对比

一、前言 HTTP-FLV、WS-FLV、HTTP-TS 和 WS-TS 是针对 FLV 和 TS 格式视频流的不同传输方式。它们通过不同的协议实现视频流的传输,以满足不同的应用场景和需求。接下来我们对这些流媒体传输协议进行剖析。 二、传输协议 1、HTTP-FLV 介绍:基于 HTTP…

基于springboot的大学计算机基础网络教学系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于springboot的大学计算机基础网络教学…