我提供了一个需要备份的文件列表,并在一个函数中对它们进行了tar处理
该列表是比较两个包含校验和的文本文件的结果
文件的制作方法:
hash = hashlib.md5(path + '/' + file).hexdigest()
f.write('{} - {}'.format(hash, path + '/' + file) + '\n')
比较方法:
with open(tmpfile, 'r') as f1:
with open(storagefile, 'r') as f2:
diff = set(f1).difference(f2)
打油时出现以下错误:
[Errno 2] No such file or directory: '/XXX/XXX/XXXX/XXXX/Trash/files/hihi\n'
注意文件名中的'
和\n
如果在涂焦油之前打印路径,则没有'
和\n
的痕迹
/XXX/XXX/XXXX/XXXX/Trash/files/hihi
有人知道为什么会发生这种情况或者如何解决吗?
也许我应该使用流编写器而不是依赖于\n
使用
set(f1)
读取文件时,从文件中读取的行包括换行符(类似于f1.readlines())例如:
有很多方法可以解决这个问题。例如,使用:
如果文件总是使用问题中显示的代码创建的,那么这应该可以很好地工作。如果最终您可能会读取在其他地方创建的文件,那么在将行放入集合之前,您应该安全地去掉换行符。这将避免文件没有最后换行的潜在问题
相关问题 更多 >
编程相关推荐