我编写了一个包含model.tar
文件的Python包hwrt
。文件本身和内容都不应该打扰用户(他们可以看一下,这不是秘密 - 但他们不需要它。)
我需要处理该档案中的文件。为此,我提取内容并使用它们:
import tarfile
tar = tarfile.open('model.tar in python package')
tar.extractall()
tar.close()
[... work with those files ...]
这很有效。但是,我发现这种方法存在两个问题:
model.tar
。为了解决问题(2),在我看来,在tempfile.gettempdir()
中创建一个临时文件夹将是最干净的解决方案。但是,我不确定这是不是应该这样做的地方。
是否有其他存档格式可以直接访问存档的内容?是否有一个目录,我可以在安装后为我的Python包(适用于所有用户)放置文件?
答案 0 :(得分:0)
如果文件只有~10MB,只需将其读入RAM即可。您以后的数千次访问将会感谢您。
如果您只想在第一次解包,您有几个选择:
在安装时解压缩到源目录
解压缩一次到本地.cache
目录
如果您可以在每次运行后进行拆包,请使用tempfile.gettempdir
。