【发布时间】:2016-04-11 14:41:46
【问题描述】:
我必须存储一些临时文件(它不必是人类可读的)。由于我是从不同的线程创建它们,我不想在线程之间进行困难的通信 - 名称已保留或已使用等。
最好的选择似乎是使用hash。
例子:
我在“Žilina”、“54845”块下有很多记录。我想将它们临时存储到某个 txt 文件中。
所以我会这样做:
write_into_temp_file(name_of_the_file=hashlib.file_name_hash('Žilina54845'))
而且我可以肯定 (99.9999 %) 不会与另一个临时文件发生任何冲突。
我试图在这个问题Short Python alphanumeric hash with minimal collisions 中找到一些灵感,但是那些hashes 包含不允许成为文件名一部分的标志。例如==
编辑:
我的操作系统是Windows
【问题讨论】:
-
为什么不使用uuid?
-
我必须依赖唯一的字符串。事实上,一个线程中可以创建更多文件等。
-
我不明白,是什么阻止您为每个文件生成 uuid?
标签: python windows hash filenames