A. 怎么用python搜索文本并筛选出来
txtfile=open(r'test.txt',"r")
newtxtfile=open(r'new.txt',"w")
linelist=[]
forlineintxtfile:
linelist.append(line)
iflen(linelist)==4:
ifnotlinelist[1].startswith(r'aaa'):
newtxtfile.writelines(linelist)
linelist=[]
iflen(linelist)>1:
ifnotlinelist[1].startswith(r'aaa'):
newtxtfile.writelines(linelist)
eliflen(linelist)==1:
newtxtfile.writelines(linelist)
txtfile.close()
newtxtfile.close()
读取文件test.txt,将每四行中第二行以aaa开始的去除,写入新文件new.txt中
B. python读取txt文件,查找到指定内容,并做出修改
defmodifyip(tfile,sstr,rstr):
try:
lines=open(tfile,'r').readlines()
flen=len(lines)-1
foriinrange(flen):
ifsstrinlines[i]:
lines[i]=lines[i].replace(sstr,rstr)
open(tfile,'w').writelines(lines)
exceptException,e:
printe
modifyip('a.txt','a','A')
C. python 查找txt文件内指定字符串后空格内的内容,正则表达式
importre
text=open(r"a.txt").read()
findtext=re.findall(r"abcs+(defg)",text)
newtext=open(r"b.txt","w")
newtext.writelines(line+"
"forlineinfindtext)
D. python 文本查找
这个很简单哈,我用java写过类似的,python下没写过,但思路都是一样的,我说一下思路,供你参考一下:
【笨方法】”字符串截取“
基本字符串1=”abc123“
基本字符串2=”345aaa“
例如:目标字符串为:Today
is
a
good
day
aaa123目标字符串345aaa
那么:
获得基本字符串1的长度:len1=len(基本字符串1)
获得基本字符串2的长度:len2=len(基本字符串2)
---------------------------------------------------------------------
以len1长度开始截取目标字符串,以上面的例子为例,截取出来的应该为:
Today_
oday_i
day_is
ay_is_
y_is_a
等...........................
..............
当然这些都是一个循环就可以搞定,然后在这个循环里,对每次接触的字符串进行比对,如果找到与目标字符串形同的,则记下”索引“
开始进行下一步处理:截取本句剩下的部分,找到”基本字符串2“,然后记下其开始”索引“,那么两个”索引“之间的东东就是你想要的那个”目标字符串“,之后你想用它干什么都行...........
【超简单的方法】
会”正则表达式“吗?会的话,直接用正则吧,几句就出来了..........
E. python怎么提取出文件里的指定内容
python读取文件内容的方法:
一.最方便的方法是一次性读取文件中的所有内容并放置到一个大字符串中:
all_the_text = open('thefile.txt').read( )
# 文本文件中的所有文本
all_the_data = open('abinfile','rb').read( )
# 二进制文件中的所有数据
为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件读取:
file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
不一定要在这里用Try/finally语句,但是用了效果更好,因为它可以保证文件对象被关闭,即使在读取中发生了严重错误。
二.最简单、最快,也最具Python风格的方法是逐行读取文本文件内容,并将读取的数据放置到一个字符串行表中:list_of_all_the_lines = file_object.readlines( )
这样读出的每行文本末尾都带有"
"符号;如果你不想这样,还有另一个替代的办法,比如:
list_of_all_the_lines = file_object.read( ).splitlines( )
list_of_all_the_lines = file_object.read( ).split('
')
list_of_all_the_lines = [L.rstrip('
') for L in file_object]
F. Python 截取文本内容
你要的内容说得不清楚:
importjsonasjs
file="test.json"#此文件中存放的是下面str_js中一样的内容
str_js='{"msg":"你电脑打字一分钟字速多少","type":"text"}'#字符串
mydict=js.loads(str_js)
print(mydict['msg'])#你电脑打字一分钟字速多少
withopen(file)asf:
mydict=js.load(f)
print(mydict['msg'])
不知道你的原始数据内容来自哪里,是个字典还是字符串?
G. python查找txt文件中关键字
伪代码:
1、遍历文件夹下所有txt文件
rootdir='/path/to/xx/dir'#文件夹路径
forparent,dirnames,filenamesinos.walk(rootdir):
forfilenameinfilenames:
2、读取txt文件里的内容,通过正则表达式把txt里多篇文章拆分开来。得到一个列表:['{xx1}##NO','{xx2}','{xx3}##NO']
3、把上面得到的list写到一个新的临时文件里,比如:xx_tmp.txt,然后:shutil.move('xx_tmp.txt','xx.txt')覆盖掉原来的文件
H. python 文本文件中查找指定的字符串
def find(lists):
for list0 in lists:
if list0.find('set internet Active')>=0:
if list0.find('#')>=0:
continue
else:
return 0 #有一行不带#号的set internet Active,那么返回0
return -1 #若没有不带号的set internet Active,那么返回-1
if __name__=='__main':
lists = ['set internet Active','#set internet Active','# set internet Active']
#lists 是从文件中读出内容的列表
findout=find(lists) #调用函数
print(findout) #打印结果
I. python 文本内容提取
#!/usr/bin/python3
#-*-coding:utf-8-*-
defparse(text):
result=[]
importre
r1=re.compile(r's*(/[^s]+)s+FaceTrackings+{([^}]*)}s+(([^)]*))')
r2=re.compile(r's*FD_Faces+(([^)]*))')
pos=0
whileTrue:
m=r1.match(text[pos:])
ifnotm:
break
data={}
data['source']=m.group(1)
keys=m.group(2).split(',')
values=m.group(3).split(',')
attrs=dict(map(lambdax,y:[x,y],keys,values))
data.update(attrs)
pos+=m.end()
face=[]
forxinrange(int(data['FaceNumber'])):
m=r2.match(text[pos:])
ifnotm:
break
face.append(m.group(1).split(','))
pos+=m.end()
data['FD_Face']=face
result.append(data)
returnresult
defmain(input_file,output_file):
f=open(input_file,'r')
text=f.read()
f.close()
result=parse(text)
buff=[]
fordatainresult:
buff.append('miFileIndex:{miFileIndex}'.format(**data))
buff.append('source:{source}'.format(**data))
buff.append('FaceNumber:{FaceNumber}'.format(**data))
i=0
forfaceindata['FD_Face']:
i+=1
buff.append('Face{0}:({1})'.format(i,','.join(face)))
buff.append('')
f=open(output_file,'w')
f.write("
".join(buff))
f.flush()
f.close()
if__name__=='__main__':
importsys
iflen(sys.argv)==3:
main(sys.argv[1],sys.argv[2])