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


Posted in Python onMarch 11, 2019

1 文件处理形式  

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

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

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

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文件详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python中使用语句导入模块或包的机制研究
Mar 30 Python
Python类的定义、继承及类对象使用方法简明教程
May 08 Python
Python入门之modf()方法的使用
May 15 Python
举例讲解Python中的死锁、可重入锁和互斥锁
Nov 05 Python
详解Python读取配置文件模块ConfigParser
May 11 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
Python矩阵常见运算操作实例总结
Sep 29 Python
基于Django contrib Comments 评论模块(详解)
Dec 08 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
Jan 29 Python
使用python os模块复制文件到指定文件夹的方法
Aug 22 Python
python 实现弹球游戏的示例代码
Nov 17 Python
python3操作redis实现List列表实例
Aug 04 Python
Python数据报表之Excel操作模块用法分析
Mar 11 #Python
Python合并同一个文件夹下所有PDF文件的方法
Mar 11 #Python
Python实现截取PDF文件中的几页代码实例
Mar 11 #Python
Python XlsxWriter模块Chart类用法实例分析
Mar 11 #Python
Python写一个基于MD5的文件监听程序
Mar 11 #Python
Python使用reportlab模块生成PDF格式的文档
Mar 11 #Python
Python3转换html到pdf的不同解决方案
Mar 11 #Python
You might like
Zend的MVC机制使用分析(一)
2013/05/02 PHP
php递归使用示例(php递归函数)
2014/02/14 PHP
PHP调用JAVA的WebService简单实例
2014/03/11 PHP
PHP文件操作之获取目录下文件与计算相对路径的方法
2016/01/08 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
使用delegate方法为一个tr标签加一个链接
2014/06/27 Javascript
js实现DOM走马灯特效的方法
2015/01/21 Javascript
Bootstrap 3 按钮标签实例代码
2017/02/21 Javascript
js中编码函数:escape,encodeURI与encodeURIComponent详解
2017/03/21 Javascript
Bootstrap table使用方法总结
2017/05/10 Javascript
jQuery动画_动力节点节点Java学院整理
2017/07/04 jQuery
vue-router的使用方法及含参数的配置方法
2018/11/13 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
原生js实现trigger方法示例代码
2019/05/22 Javascript
详解Vue后台管理系统开发日常总结(组件PageHeader)
2019/11/01 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
2019/11/07 Javascript
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
Python实现的Google IP 可用性检测脚本
2015/04/23 Python
python安装numpy&安装matplotlib& scipy的教程
2017/11/02 Python
python后端接收前端回传的文件方法
2019/01/02 Python
节日快乐! Python画一棵圣诞树送给你
2019/12/24 Python
浅谈python print(xx, flush = True) 全网最清晰的解释
2020/02/21 Python
python实现图片横向和纵向拼接
2020/03/05 Python
Myprotein葡萄牙官方网站:英国优质运动营养品牌
2016/09/12 全球购物
加拿大在线眼镜零售商:SmartBuyGlasses加拿大
2019/05/25 全球购物
合作经营协议书
2014/04/17 职场文书
模具设计与制造专业自荐书
2014/07/01 职场文书
学生偷窃检讨书
2014/09/25 职场文书
工伤事故赔偿协议书(标准)
2014/09/29 职场文书
2015年乡镇纪检工作总结
2015/04/22 职场文书
关于实现中国梦的心得体会
2016/01/05 职场文书
解决pytorch-gpu 安装失败的记录
2021/05/24 Python
Python实现天气查询软件
2021/06/07 Python
JS创建或填充任意长度数组的小技巧汇总
2021/10/24 Javascript
Docker安装MySql8并远程访问的实现
2022/07/07 Servers