字符串文件,在另一个文件中找到匹配的字符串

时间:2018-12-14 23:05:01

标签: arrays file directory

我有一个文件(文件A.txt)和一个具有文件B.txt的目录。文件B和文件A在不同的目录中。

我想读取文件B目录中的所有文本文件,并查看文件A以在文件B及其下面的文本中找到匹配的字符串。

这是文件的一小段 文件A.txt:

**453454

文件B.txt :(目录中的一个文件,要搜索该目录中的所有.txt文件)

**84565
cat   dog       sd
fish  turtle    fg

预期输出:

**84565
cat   dog       sd
fish  turtle    fg

非常感谢您!

1 个答案:

答案 0 :(得分:0)

问题在于found从未设置为False。您拥有的if子句仅在读取空行时才会触发。相反,您可以做的是检查每个“数字行”(带有两个星号和一个数字的行)并相应地设置found。即如果“数字行”与“文件A.txt”中的一个匹配,则将found设置为True,如果未将其设置为False。最后一个for循环将如下所示:

for line in file:
    if line.startswith("**"):
        if line.strip() in foxnum:
            found = True
        else:
            found = False
    if found:
        results.write(line)