编写一个比较两个文件内容是否相同的程序,若相同,显 示“compare ok”,否则显示“no equal”

编写一个比较两个文件内容是否相同的程序,若相同,显示“compare ok”,否则显示“no equal”。(自己在D盘创建两个txt文件,第一次测试时要求文件内容一致,第二次测试时要求文件内容不同)

先在d盘建立两个txt文件,名字分别叫test1.txt和test2.txt

#打开e盘的两个文本
f1 = open('d:\\test1.txt','r',encoding='utf-8')
f2 = open('d:\\test2.txt','r',encoding='utf-8')
#分别读取文本的内容
str1 = f1.read()
str2 = f2.read()
#关闭文本
f1.close()
f2.close()
#比较文本里的内容是否一致,一致输出compare  ok,不一致输出no  equal
if str1 == str2:
    print('compare  ok')
else:
    print('no  equal')

测试:
内容相同时

img

内容不同时

img


with open("./1.txt", "r", encoding="utf-8") as file1:
    text1 = file1.read()
with open("./2.txt", "r", encoding="utf-8") as file2:
    text2 = file2.read()
# 比较两个文件读取的内容是否相等
if text1 == text2:
    print("compare ok")
else:
    print("no equal")

如果觉得答案对您有帮助,记得采纳哟!


#新建了3个文本文档a,b,c,其中a和b不同,和c相同,但是c内部有大量空行
#首先写一个清洗函数,用于去掉空行

def format_file(filename):
    words=[]
    with open(filename) as fr:
        for i in fr.readlines():
            if i.replace("\n",""):#排除空行
                words.append(i.strip())#去除每行首位空格,加入列表
    # return words   此处可以直接返回列表,或者用join方法把列表变成字符串
    return "".join(words)#我直接返回了字符串

a = format_file("a.txt")
b = format_file("b.txt")
c = format_file("c.txt")
#判断是否一样,等于或者不等于,输出结果,如果需要绝对得等于,每一个字符都相同,还需要再次清洗空格