未知
thecache的Python项目详细描述
这是一个简单的基于文件的缓存实现,用于 简单的情况下,你想缓存一些数据(也许你想 避免用重复的请求重击api服务器),但是 希望功能和关联的配置任务与 更多功能丰富的缓存模块。
##用法
给自己找个缓存:
>>> from thecache.cache import Cache >>> mycache = Cache(__name__)
对少量数据使用缓存(以节省内存 操作,请阅读下面更详细的说明:
>>> mycache.put('some key', 'a chunk of data') >>> if mycache.has('some key'): ... print 'Content:', mycache.get('some key') ... else: ... print 'Key "some key" was not in cache' ... Content: a chunk of data
或:
>>> try: ... print 'Content:', mycache.get('some key') ... except KeyError: ... print 'Key "some key" was not in cache' ... Content: a chunk of data
##存储数据
store
(也是put
)这将把python变量的内容写入缓存。
store_fd
这将从打开的文件中读取
chunksize
字节块和 将数据写入缓存。store_iter
这将遍历
content
,将每个数据块写入 隐藏物。这是处理来自requests
流媒体模式下的库:>>> import requests >>> r = requests.get(url, stream=True) >>> c.store_iter(url, r.iter_content(chunk_size=8192))
store_lines
这几乎与
store_iter
完全一样,只是它附加了一个 在写入每个数据块后换行。这对 使用load_lines
方法:>>> mydata = ['one', 'two', 'three', 'four'] >>> c.store_lines('mykey', mydata)
##读取数据
如果您请求密钥,则以下所有函数都会引发KeyError
在缓存中找不到的。
load
(也是get
)这将从缓存中读取数据并返回数据 给打电话的人。
load_lines
这将在缓存中存储的行上返回一个迭代器。这个 当所有行都有 已被阅读。
load_iter
这将返回一个迭代器,该迭代器生成的数据以
chunksize
字节为单位 大块的。当 数据已被读取。load_fd
这将向调用方返回一个打开的文件。是来电者的工作 在不再需要时关闭文件。
##贡献
要报告此代码的问题,请使用[问题跟踪程序][]。 更改可以作为github请求提交。
[问题跟踪者]:https://github.com/larsks/thecache/issues
##许可证
缓存,一个简单的python缓存实现 版权所有(c)2016 lars kellogg stedman<;lars@oddbit.com>;
此程序是免费软件:您可以重新分发和/或修改 根据由 自由软件基金会,或者许可证的第3版,或者 (由您选择)任何更高版本。
这个程序的发布是希望它能有用, 但没有任何保证;甚至没有 适销性或适合某一特定目的的适销性。见 GNU通用公共许可证了解更多详细信息。
你应该收到GNU通用公共许可证的副本 还有这个节目。如果没有,请参见<;http://www.gnu.org/licenses/>;。