python——txt文本处理

1.去除文本中的空行,写入另一个文本
# -*- coding:utf-8 -*-
 
f=open('data.txt')
g=open('data5.txt','w')
 
try:
    while True:
        line=f.readline()
        if len(line)==0:
            break
        if line.count('\n')==len(line):
            continue
        g.write(line)
finally:
    f.close()
    g.close()

2.从文本中找出带有某个关键字的行
import os

f1=open('data.txt','r')   #保存的txt
f2=open('data2.txt','w+')   #保存的txt
txt=f1.readlines()
n=0
for line in txt:
	n = n + 1
	if "High" in line:
		line = line.strip()
		f2.write(txt[n]+'\n')
		print(n,line)
		print(txt[n])


3.找出每一行在文本中出现的次数
#_*_coding:utf-8_*_
import operator
f = open("data2.txt")
f2=open("gg.txt","w+")
# 初始化空字典,key为行内容,value为该行出现的次数
result = {}
for line in f:
    line = line.strip()
    count = result.setdefault(line,0)
    count += 1
    result[line] = count
sorted_result = sorted(result.items(), key=operator.itemgetter(1),reverse=True)
for k,v in sorted_result:
    f2.write(k+"---"+str(v)+'\n')
    print (k,"---",v)

4.把目录下的所有txt进行合并
import glob
import os
 
path='J:/txt/v20/'   #遍历的路径
f1=open('J:/v20.txt','w+')   #保存的txt

for root,dirs,files in os.walk(path):
	for file in files:
		folder=root.split('/')[-1]   #取得txt对应的文件夹名称
		print(folder)

		if file.endswith('txt'):
			print('find it---',root+'/'+file)
			txt_path=root+'/'+file   #打开找到的txt
			for line in open(txt_path):
				f1.write(folder+'     '+line)   #读行,写入新txt中
f1.close()

end.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值