当前位置: 首页 > 面试题库 >

在Python中,有没有一种简洁的方法可以比较两个文本文件的内容是否相同?

郏景澄
2023-03-14
问题内容

我不在乎有什么区别。我只想知道内容是否不同。


问题答案:

低级方式:

from __future__ import with_statement
with open(filename1) as f1:
   with open(filename2) as f2:
      if f1.read() == f2.read():
         ...

高级方式:

import filecmp
if filecmp.cmp(filename1, filename2, shallow=False):
   ...


 类似资料:
  • 问题内容: 在Python中查看两个文件在内容方面是否相同的最简单方法是什么。 我可以做的一件事是对每个文件md5进行比较。有没有更好的办法? 问题答案: 是的,我认为如果必须比较多个文件并存储哈希以供以后比较,则对文件进行哈希处理将是最好的方法。由于哈希可能会发生冲突,因此可能会根据用例进行逐字节比较。 通常,逐字节比较将是足够且高效的,哪个filecmp模块也已经执行了其他操作。 参见http

  • 问题内容: 我正在研究Java应用程序的一部分,该应用程序将图像作为字节数组,将其读入实例,然后将其传递给第三方库进行处理。 对于单元测试,我想获取一个图像(从磁盘上的文件中获取),并断言它等于代码处理过的同一图像。 我的 预期 是使用从磁盘上的PNG文件读取的。 我的 测试 代码将相同的文件读入A,并将其作为PNG写入字节数组,以提供给被测系统。 当被测系统将字节数组写入新数组时,我想断言这两个

  • 当我从文本文件中删除一行,将其添加到临时文本文件中,然后用原始文件替换临时文件时,扫描仪没有加载正确的文本。它是从原始文件加载内容,而不是更新的文件。我想让它用新的内容加载更新的文件。 输出:1生物2化学4统计5物理3数学

  • 在Borland VCL库中,几乎所有控件都有提示属性。在运行时,当您将鼠标放在相应的控件上时,当您移动鼠标时,一个带有提示文本的小框会弹出并再次消失,例如Windows资源管理器和其他程序中的帮助消息,当鼠标光标放在按钮上时。 JavaFX中是否有类似的概念(实际上,我使用的是ScalaFX)? 当然,我可以创建一个没有装饰的新舞台,添加一些鼠标监听器等,但是它不是已经在某个地方可用了吗?

  • 问题内容: 我知道你可以打电话 如果它不是可执行文件,则会得到一个异常,但这是不安全的,因为运行可执行文件会产生副作用。 我想只检查扩展名在Windows上就足够了,但是有没有办法我可以读取* nix文件系统上的可执行文件呢? 找出文件在OS中是否可执行的最佳方法是什么? 问题答案: 参见java.io.File.canExecute()

  • 问题内容: 我有一个Shell脚本,在其中需要检查两个文件是否包含相同的数据。我对大量文件执行此操作,并且在我的脚本中,该命令似乎是性能瓶颈。 这是一行: 有没有一种比较快速的方法来比较文件,也许是自定义算法而不是默认算法? 问题答案: 我相信会在第一个字节的差异处停止: