浅谈Python批处理文件夹中的txt文件
作者:edj_13 发布时间:2023-03-17 22:58:28
标签:python,批处理,txt
1 文件处理形式
近期由于处理大量数据,所以对于采用python进行处理文件的一些操作也打算整理一下;接下来主要说一下如何处理目录下的一系列txt文件。首先看一下我们将要处理目录下的15个类似的数据文件,其中提取的数据如图所示,以及在读写文件时所需要的关键词,可以让程序正确读写相应的数据
2.代码段-python
接下来就是贴出相应的python代码,具体一些关键的注释我已经标注好了,具体数据结果就不展示了,如果大家想拿我的数据进行测试联系我就好,但是一般情况下在我标注的地方进行相应的修改就好,希望有啥不懂得大家可以一起交流。
import os
import numpy as np
def eachFile(filepath):
j=0
pathDir = os.listdir(filepath) #获取当前路径下的文件名,返回list
for s in pathDir:
newDir=os.path.join(filepath,s) #将文件名写入到当前文件路径后面
if os.path.isfile(newDir): #如果是文件
if os.path.splitext(newDir)[1]==".txt": #判断是否是txt
readFile(newDir)
j=j+1
print(j)
pass
else:
break
def readFile(filepath):
index=0 #控制数据存入不同的list
with open(filepath,"r") as f:
line=f.readline()
# print(line)
while line:
if line[:9]==' cell 10': #根据关键词抽取数据
f.readline()
index=index+1
for i in range(126): #抽取的数据格式
energy,f4,error=f.readline().split()
if(index==1):
list_total.append(f4)
elif(index==2):
list_electron.append(f4)
else:
list_positron.append(f4)
line=f.readline()
def main():
global list_total,list_electron,list_positron #定义全局变量,可以将所有数据都存入list中
fp=r'F:\\MCwork\\MCCM\\scripts\\filesworks' #存放数据的目录
os.chdir(fp)
eachFile(fp)
output =open("flux.txt",'w') #将list存入相应的文件中,便于后期处理数据
listdata_total=list(np.reshape(list_total,(15,126)).T) #改变数组维度,存储
for i in range(126): #数据读入相应文件的第一种方法,第一篇博客有介绍
for j in range(15):
output.write(listdata_total[i][j]+' ')
output.write('\t')
output.write('\n')
output.close()
if __name__ == '__main__':
list_electron=[]
list_total=[]
list_positron=[]
main()
以上所述是小编给大家介绍的Python批处理文件夹中的txt文件详解整合网站的支持!
来源:https://blog.csdn.net/edj_13/article/details/86499152


猜你喜欢
- 前一阵子经理问我能不能把用户最后一次登录我们的业务数据库的时间记录下来,因为之前有人修改过数据库sa用户的登录密码,所以我们要记录一下。 我
- 前言前段时间因为需要处理一大堆验收单,都是一些简单的复制粘贴替换工作,于是就想到用python进行处理。接下来进入正题~实现需求我是用的开发
- 本文实例讲述了python去除文件中空格、Tab及回车的方法。分享给大家供大家参考,具体如下:在最近的开发工作中,为了应付比赛赶进度,服务端
- 一.生成器简介在python中,带yield的方法不再是普通方法,而是生成器,它的执行顺序不同与普通方法.普通方法的执行是从头到尾,最后re
- 以下代码实现环境是mac系统,本地配置mysql服务端和navicat premium客户端,python环境是配置了pymysql的ana
- SMTP用于发送邮件,如果要收取邮件呢?收取邮件就是编写一个MUA作为客户端,从MDA把邮件获取到用户的电脑或者手机上。收取邮件最常用的协议
- Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能。Git有很多优势,其中之一就是远程操作非常简便。本文详细介绍5个Git
- 插入数据insert into 表名(列名1,列名2,列名3) values(值1,值2,值3);insert into user(user
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 7 - Set and Get Style Pro
- 这是17年的第一篇博文,话说这天又是产品同学跑过来问我说:hi,lenny,你看现在市面上流行各种装逼H5,随便输入点名字啥的就给我生成房产
- 安装顺序rpm -ivhmysql-community-common-5.7.18-1.el7.x86_64.rpmmysql-commun
- function gaga(obj){ // 值允许输入一个小数点和数字 obj.value = obj.value.replace(/[^
- 1.前期准备1.打开Terminal终端,执行以下命令,将项目所需要的依赖包,都记录到一个文件内备用。pip freeze >requ
- 5月3日晚,央视在《新闻联播》前播放了B站青年宣言片《后浪》,这是B站首次登陆央视黄金时段,今天在朋友圈陆续看到相关的视频。最早用B站的同学
- Python的字典一般都直接查找key ,比如dict={'a':1,'b':2,'c':3
- 我们有时候需要把一些 * 发给多个客户,为了避免客户泄露文件,会在 * 中添加水印。每个客户收到的文件内容相同,但是水印都不相同。这样一
- 字符串字符串常用操作拼接字符串拼接字符串需要使用‘+’运算符可完成对多个字符串的拼接。如str =
- 在使用matplotlib绘制图片时,x轴的刻度可能比较密集,特别是以日期作为x轴时,则最后会显示不出来。数据如下,速度V的数组与时间字符串
- 安装环境:CentOS7 64位,MySQL5.71、配置YUM源在MySQL官网中下载YUM源rpm安装包:http://dev.mysq
- 前言关于 Python 中的pass语句,它似乎很简单(只有 4 个字母),即使是没有任何编程经验的初学者也能很快地掌握它的用法。简单而言,