如何在一列的文本文件中查找特定的数字值?

时间:2011-03-11 20:20:39

标签: python

for line in fname:
    fields = line.rstrip("\n").split()
    dc = refindall('0.8|0.9).group()
    samples = line
   sys.stdout.writelines(samples)

我在另一个列文本文件的每一行中找到一个特定的浮点数(数字(0.8和0.9))时遇到了另一个问题。其次,如果找到这一行,则应删除它。这是我的代码:

2 个答案:

答案 0 :(得分:4)

您的代码中有许多错误:

  • re和findall之间缺少一个点。
  • 正则表达式中的点表示“匹配任何字符”。
  • 您的字符串未正确终止,因为缺少引号。
  • re.findall有两个参数。你好像只提供一个。
  • re.findall返回字符串列表。列表没有名为“group”的方法。
  • 代码没有正确缩进。

但是这里不需要正则表达式。请尝试此列表理解:

lines = [line for line in lines if not (line == '0.8' or line == '0.9')]

答案 1 :(得分:0)

for line in fname:
 fields = line.rstrip("\n").split()
dc = re.findall(r'0\.8|0\.9').group()
samples = line

sys.stdout.writelines(samples)

我认为你没有逃避正则表达式中的.

编辑:请参阅Mark Byers帖子:你真的不需要像这样的正则表达式。