香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

浅谈Python批处理文件夹中的txt文件


时间:2022-04-02 10:22 作者:admin


1 文件处理形式

近期由于处理大量数据,所以对于采用python/' target='_blank'>python进行处理文件的一些操作也打算整理一下;接下来主要说一下如何处理目录下的一系列txt文件。首先看一下我们将要处理目录下的15个类似的数据文件,其中提取的数据如图所示,以及在读写文件时所需要的关键词,可以让程序正确读写相应的数据

2.代码段-Python

接下来就是贴出相应的python代码,具体一些关键的注释我已经标注好了,具体数据结果就不展示了,如果大家想拿我的数据进行测试联系我就好,但是一般情况下在我标注的地方进行相应的修改就好,希望有啥不懂得大家可以一起交流。

import osimport numpy as np def eachFile(filepath):j=0pathDir = os.listdir(filepath)  #获取当前路径下的文件名,返回listfor 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         #控制数据存入不同的listwith open(filepath,"r") as f:line=f.readline()# print(line)while line:if line[:9]==' cell 10':   #根据关键词抽取数据f.readline()index=index+1for 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文件详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)