如何使用Python将模式过滤到另一个文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Python将模式过滤到另一个文件?相关的知识,希望对你有一定的参考价值。

我有一本字典。我想只拿出包含一个简单的单词模式(即“cow”)的单词并将它们写入另一个文件。每行以一个单词开头,然后是定义。我仍然是python的新手,所以我对语法没有很好的掌握,但我头脑中的伪代码看起来像:

infile = open('C:/infile.txt')
outfile = open('C:/outfile.txt')

pattern = re.compile('cow')

for line in infile:
  linelist = line.split(None, 2)
  if (pattern.search(linelist[1])
    outfile.write(listlist[1])

outfile.close()
infile.close()

我遇到了很多错误,任何帮助都将不胜感激!

答案
import re

infile  = open('C:/infile.txt')
outfile = open('C:/outfile.txt', 'w')

pattern = re.compile('^(cow\w*)')

for line in infile:
    found = pattern.match(line)
    if found:
        text = "%s\n" % (found.group(0))
        outfile.write(text)

outfile.close()
infile.close()
另一答案

使用'with open'和过滤器

import re
pattern = re.compile('^(cow\w*)')

with open(outfile,"w") as fw:
  with open(infile,"r") as f:
    for outline in filter(lambda x: not pattern.match(x.strip()),f):
      fw.write(outline)

以上是关于如何使用Python将模式过滤到另一个文件?的主要内容,如果未能解决你的问题,请参考以下文章

将过滤后的数据从一个工作表复制到另一个工作表

我如何将一次出现的所有项目过滤到一个列表中,并将多次出现的所有项目过滤到另一个列表中?

使用 Python 将所有文件从一个目录移动到另一个目录

如何使用python代码,从当前文件夹一个文件里复制字符到另一个文件夹下的同名文件里,文件有多个!

python中如何把一个文件夹剪切到另一个文件夹里

如何复制vim编辑器中的内容粘贴到另一个终端的编辑器里