【问题标题】:Looping through subdirectories and deleting files that are duplicate md5 hashes循环遍历子目录并删除重复 md5 哈希的文件
【发布时间】:2020-09-22 22:35:58
【问题描述】:

我有一个包含很多子目录的目录,这些子目录中有 txt 文件。对于每个子目录,我想获取相应子目录中每个文件的 md5 哈希值,并删除该子目录 [Python] 中所有重复的 md5 哈希值。

我需要帮助编写一个函数,该函数接收目录并返回没有 txt 文件的目录,这些文件具有子目录的重复 md5 哈希值。

【问题讨论】:

  • 您尝试了一些无效的方法吗?

标签: python md5 subdirectory


【解决方案1】:

您可以使用os.listdir 列出目录

您可以使用os.path.join(BASEDIR,filename) 获取结果的路径

你可以使用open(filename,"rb")打开一个文件进行读取(二进制是可以的)

您可以使用filehandle.read 从文件中获取字节

您可以使用hashlib.md5 生成 md5(以及其他方法)

您将使用列表/集合/或字典来跟踪您已经看到的内容 (set 或 dict 会更快)

您看到的任何内容都可以使用os.remove 来删除

这是您可以用来解决问题的一种算法,还有很多其他方法也可以解决此问题

【讨论】:

    猜你喜欢
    • 2016-08-20
    • 1970-01-01
    • 2011-11-30
    • 1970-01-01
    • 2020-11-05
    • 2012-01-20
    • 2014-06-17
    • 1970-01-01
    相关资源
    最近更新 更多