将文件的某些数据与python中的另一个文件进行比较

时间:2012-08-13 08:14:12

标签: python file file-comparison

我有一个文件f1,其中包含一些文字,可以说“一切都很好”。 在另一个文件f2中,我可能有100行,其中一行是“一切都好”。

现在我想查看文件f2是否包含文件f1的内容。

如果有人提供解决方案,我将不胜感激。

由于

4 个答案:

答案 0 :(得分:2)

with open("f1") as f1,open("f2") as f2:
    if f1.read().strip() in f2.read():
         print 'found'

编辑: 由于python 2.6不支持单行上的多个上下文管理器:

with open("f1") as f1:
    with open("f2") as f2:
       if f1.read().strip() in f2.read():
             print 'found'

答案 1 :(得分:1)

template = file('your_name').read()

for i in file('2_filename'):
    if template in i:
       print 'found'
       break

答案 2 :(得分:0)

with open(r'path1','r') as f1, open(r'path2','r') as f2:
    t1 = f1.read()
    t2 = f2.read()
    if t1 in t2:
        print "found"

如果要搜索的字符串中有'\ n',则使用其他方法将无效。

答案 3 :(得分:0)

fileOne = f1.readlines()
fileTwo = f2.readlines()

现在fileOnefileTwo是文件中的行列表,现在只需检查

if set(fileOne) <= set(fileTwo):
    print "file1 is in file2"