python - 管理存储在文件中的python结构,就好像它们在内存中一样?
问题描述
我想以文件保留在磁盘上并且我的应用程序使用部分数据的方式管理许多文件。
我必须管理 2 种类型的文件 text-files/book-like, cvs-files/time-series。对于每个文件,我可能会生成多个尺寸缩小的副本,我想保留和缓存这些副本,因此我不必重新生成它们。
我可以看到两种方法:
1. create my own lib that uses mem-mapping
2. use tool as DASK
Dask 似乎是一个不错的选择,但我找不到 Bag 对象在循环和/或范围访问中迭代的方法,即
for i in bag_obj[2:10] : .....
bag_obj[5:10]
我只能做 .take()
其次,有一种方法可以将 LIST 映射到文件并像普通列表一样执行列表操作,就好像它在内存中一样。
我想出了它,这是最好的:
def slice(self, pfrom, pto):
assert self.bag is not None
self.bag.take(pto)[pfrom:]
但不起作用,因为返回计算()值;(
解决方案
这可能是一个解决方案?
from dask.bag.core import Bag
def slice(self, pfrom, pto): return self.take(pto)[pfrom:]
Bag.slice = slice
推荐阅读
- angular - 两个自动完成获取相同的数据
- react-native - 已授予权限但一直告诉未授予 REACT-NATIVE
- laravel - Laravel:从不同表中查找另一个字段的字段
- python - Discord.py Mass DM 有时会出现错误
- javascript - 如何通过数组上的第二个索引
- git - Azure DevOps 使用来自不同项目中另一个存储库的模块
- macos - 使用特权帮助工具在 mac os 上发布应用程序
- java - 使用 JDBCTemplate 的 JDBC 查询结果流
- swift - 让应用程序不接管菜单栏但仍有停靠图标?
- knockout.js - 淘汰嵌套的 $componentTemplateNodes 返回错误的上下文节点?