编写一个函数compare(filel,file2),比较两个文本文件内容是否相同, 如果内容相同返回True,否则返回False。在主程序中输入两个要比较的两文件名,然 后调用以上函数,文件内容相同则输出“No difference!”;否则,输出从第几个字符开 始不相同。
时间: 2024-12-08 21:16:50 浏览: 13
您可以使用Python编写这样的函数,这里提供一个简单的示例:
```python
def compare(file1, file2):
with open(file1, 'r') as f1, open(file2, 'r') as f2:
content1 = f1.read()
content2 = f2.read()
# 检查两个文件的内容长度是否相等
if len(content1) != len(content2):
return False
# 如果长度相等,则逐行对比每个字符
for i in range(len(content1)):
if content1[i] != content2[i]:
return i + 1 # 返回第一个不匹配的位置
# 如果所有字符都匹配,则返回True表示没有差异
return True
# 主程序部分
if __name__ == "__main__":
file1_name = input("请输入文件1的名称: ")
file2_name = input("请输入文件2的名称: ")
result = compare(file1_name, file2_name)
if result is True:
print("No difference!")
else:
print(f"Content starts to differ at character {result}.")
```
这个函数首先打开并读取两个文件的内容,然后检查它们的长度。如果长度不一致,说明内容不同,并返回第一个位置。如果长度一致,就逐个字符比对,一旦发现不同就返回对应位置。在主程序中,用户可以输入要比较的文件名,然后根据函数的结果输出相应的信息。
阅读全文