在python中是否有办法获取内存中文件的路径,因此对于需要文件路径的方法,它会表现为普通文件?
我的目标是保护文件,避免转储到/ tmp。
尝试阅读加密文件 - >将文件解密到内存中 - >将其路径用于其他接口。
mmap 不提供路径或文件名。
或针对此问题的任何其他解决方案?
答案 0 :(得分:0)
如果您的“文件”是内存中的字符串,则可以使用io.StringIO
(Python 3)或StringIO.StringIO
(Python 2)将其作为类文件对象传递。
示例用法(Python 2):
from StringIO import StringIO
for line in StringIO("test\nfoo\nbar"):
print repr(line)
示例用法(Python 3):
import io
with io.StringIO("test\nfoo\nbar") as f:
for line in f:
print(repr(line))
Python 3版本甚至有一个上下文管理器,所以它可以像普通的文件对象一样使用。