问题标签 [shelve]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
979 浏览

python - 删除 Python 程序留下的搁置 .dat 文件的简单方法?

所以我有一个 python 程序,它最终shelve在执行后从函数后面留下一个 .dat 文件。我希望我的程序在完成后删除或清除该文件。我的教科书只提到了如何创建 .dat 文件,但没有提到如何清除它。有什么好的命令可以解决这个问题吗?在我的程序运行完成后,我不再需要 .dat 文件。

0 投票
4 回答
15895 浏览

python - 大字典的搁置太慢,我可以做些什么来提高性能?

我正在使用 python 存储一个表,我需要持久性。

本质上,我将表格存储为数字的字典字符串。整个用搁板存放

我习惯writeback了,True因为我发现如果我不这样做,系统往往会不稳定。

计算完成后,系统需要关闭数据库,并将其存储回来。现在数据库(表)大约是 540MB,而且需要很长时间。表增长到大约 500MB 后,时间爆炸式增长。但我需要一张更大的桌子。事实上,我需要其中的两个。

我可能使用了错误的持久性形式。我可以做些什么来提高性能?

0 投票
3 回答
1966 浏览

python - 创建一个 Python Pickle 驱动的网站有什么问题吗?

我一直在玩这个想法很长一段时间,但还没有看到任何关于人们这样做的信息。我有一个小型网站项目,需要在其中加载和修改 1 个对象。这个对象非常简单,不应该超过几 kb。pickle为什么不使用和/或shelve保存这些数据并加载它,而不是为这么少量的数据运行数据库呢?我计划在项目中使用像 Bottle 或 Flask 这样的微型 Web 框架。

是否有任何理由不使用此方法加载数据?它只会在 Apache 启动时加载 pickle 文件,所以我认为速度不会受到影响(比查询数据库快)。

感谢您的任何意见!

0 投票
6 回答
62944 浏览

python - 打印一个类中的所有变量?- Python

我正在制作一个可以访问存储在类中的数据的程序。所以例如我有这个类:

所以使用它我可以调用一个变量,如:

但是如果我想打印所有变量,我有点迷茫。

如果我运行:

我得到:

但我希望能够打印这些的实际数据。

我怎样才能做到这一点?

提前致谢!

0 投票
2 回答
3221 浏览

python - 如何在搁置中获取整数键?

我想在搁置中存储一个整数键。但是当我尝试将整数键存储在搁置中时,它给了我一个错误

我的代码:

我的程序有问题还是搁置根本不支持整数键?


编辑 1:

在程序中,我试图将 Id 和 Name 的字典存储在另一个以 Id 作为键的字典中。然后尝试将其存储在文件中。

我需要将 Recno 或 Queue DB 与搁置一起使用吗?我是初学者,事情很混乱。

如果我不清楚我的问题,请告诉我。

谢谢。

0 投票
2 回答
2639 浏览

python - 我们如何修改搁置中的数据?

我使用以下代码打开了一个货架:

我能够将值附加到搁置但无法修改这些值。 我已经定义了一个函数 Deposit() 我想从中修改搁置中的数据。但它给了我以下错误:

这是我的功能:

我是 Python 新手。请帮忙。如果我错了,请纠正我。我需要有人对这段代码的功能进行一些解释。我很困惑。

0 投票
1 回答
685 浏览

python - linux磁盘缓冲区缓存是否使python cPickle比搁置更有效?

由于 linux 磁盘缓冲区缓存,当将经常访问的 python 对象存储为单独的 cPickle 文件而不是将所有对象存储在一个大架子中时,IO 是否更有效?

就效率而言,磁盘缓冲区缓存在这两种情况下的运行方式是否不同?

可能有数千个大文件(通常约为 100Mb,但有时为 1Gb),但 RAM 很大(例如 64 Gb)。

0 投票
2 回答
36438 浏览

python - 泡菜和搁置有什么区别?

我是第一次学习对象序列化。我尝试阅读和“谷歌搜索”以了解泡菜和搁置模块的差异,但我不确定我是否理解它。什么时候用哪一个?Pickle 可以将每个 python 对象转换为可以保存到文件中的字节流。那为什么我们需要模块搁置?泡菜不是更快吗?

0 投票
1 回答
1083 浏览

python - 防止python搁置损坏

我应该如何防止搁置文件损坏?搁板是否应该在大部分时间关闭,然后仅在我需要读取或编辑值时才打开?

0 投票
3 回答
1295 浏览

python - 在 Python 中存储和访问大型(~10 GB)列表的方法?

我有大量用于自然语言处理研究的字符串,我想要一种将其存储在 Python 中的好方法。

我可以使用 pickle,但是将整个列表加载到内存中是不可能的(我相信),因为它大约 10 GB 大,而且我没有那么多的主内存。目前,我将列表与搁置库一起存储...搁架由字符串“0”、“1”、...、“n”索引,这有点笨拙。

有没有更好的方法将这样的对象存储在单个文件中,并且仍然可以随机(ish)访问它?

最好的选择可能是将其拆分为多个列表。

谢谢!