import re
#coding=utf-8
with open("D:/data.txt","r+") as f:
i=99
while(1):
if(re.match(r'.m.',f.readline())!=None):
print(f.readline())
你每次调用f.readline()都会读取一行文件内容,我把你最上面的代码改一下,你看是不是你要的效果
import re
#coding=utf-8
with open("D:/data.txt","r+") as f:
i=99
while(1):
s = f.readline() #读取一行文本
if s == "": #文件已读完
break
if(re.match(r'.m.', s)!=None):
print(s)
补充:
from os import fdopen
import re
#coding=utf-8
with open("D:/data.txt","r+") as f:
i=9
while(i):
i-=1
x=re.match(r'.m.',f.readline())
if x!=None:
print(x.group(0))