如何快速将字典拆分为多个字典

2024-01-09

我找到了一个解决方案,但它真的很慢:

def chunks(self,data, SIZE=10000):
    for i in xrange(0, len(data), SIZE):
        yield dict(data.items()[i:i+SIZE])

您是否有任何不使用外部模块(numpy 等)的想法?


由于字典太大,最好将所有涉及的项目保留为迭代器和生成器,如下所示

from itertools import islice

def chunks(data, SIZE=10000):
    it = iter(data)
    for i in range(0, len(data), SIZE):
        yield {k:data[k] for k in islice(it, SIZE)}

示例运行:

for item in chunks({i:i for i in xrange(10)}, 3):
    print(item)

Output

{0: 0, 1: 1, 2: 2}
{3: 3, 4: 4, 5: 5}
{8: 8, 6: 6, 7: 7}
{9: 9}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何快速将字典拆分为多个字典 的相关文章

  • 为什么我不能导入 geopandas?

    我唯一的代码行是 import geopandas 它给了我错误 OSError Could not find libspatialindex c library file 以前有人遇到过这个吗 我的脚本运行得很好 直到出现此错误 请注意
  • 如何自动替换多个文件的文本内容中的字符?

    我有一个文件夹 myfolder包含许多乳胶表 我需要替换其中每个字符 即替换任何minus sign by an en dash 只是为了确定 我们正在替换连字符INSIDE该文件夹中的所有 tex 文件 我不关心 tex 文件名 手动执
  • 如何将条目中的部分文本加粗并更改其背景颜色?

    我正在创建一个基于 Tkinter 的 GUI 它有一个 Entry 小部件 我想将其文本的一部分加粗并更改其背景颜色 但我不知道我该怎么做 如果我使用文本小部件 我可以只使用标签 但看起来它们不能与条目小部件一起使用 此代码使用文本小部件
  • Python 中 genfromtxt() 的可变列数?

    我有一个 txt具有不同长度的行的文件 每一行都是代表一条轨迹的一系列点 由于每条轨迹都有自己的长度 因此各行的长度都不同 也就是说 列数从一行到另一行不同 据我所知 genfromtxt Python 中的模块要求列数相同 gt gt g
  • 使用正则表达式解析 Snort 警报文件

    我正在尝试使用 Python 中的正则表达式从 snort 警报文件中解析出源 目标 IP 和端口 和时间戳 示例如下 03 09 14 10 43 323717 1 2008015 9 ET MALWARE User Agent Win9
  • 将一个时间序列插入到 pandas 中的另一个时间序列中

    我有一组定期测量的值 说 import pandas as pd import numpy as np rng pd date range 2013 01 01 periods 12 freq H data pd Series np ran
  • python ttk treeview:如何选择并设置焦点在一行上?

    我有一个 ttk Treeview 小部件 其中包含一些数据行 如何设置焦点并选择 突出显示 指定项目 tree focus set 什么也没做 tree selection set 0 抱怨 尽管小部件明显填充了超过零个项目 但未找到项目
  • 行为:如何从另一个文件导入步骤?

    我刚刚开始使用behave http pythonhosted org behave 一个Pythonic BDD框架 使用小黄瓜语法 http docs behat org guides 1 gherkin html 行为需要一个特征 例
  • 反加入熊猫

    我有两个表 我想附加它们 以便仅保留表 A 中的所有数据 并且仅在其键唯一时添加表 B 中的数据 键值在表 A 和 B 中是唯一的 但在某些情况下键将出现在表 A 和 B 中 我认为执行此操作的方法将涉及某种过滤联接 反联接 以获取表 B
  • 字典的嵌套列表

    我正在尝试创建dict通过嵌套list groups Group1 A B Group2 C D L y x 0 for y in x if y x 0 for x in groups d k v for d in L for k v in
  • 合并两个地图的最佳实践是什么

    如何将新地图添加到现有地图 地图具有相同的类型Map
  • 在 Mac 上安装 Pygame 到 Enthought 构建中

    关于在 Mac 上安装 Pygame 有许多未解答的问题 但我将在这里提出我的具体问题并希望得到答案 我在 Mac 上安装 Pygame 时遇到了难以置信的困难 我使用 Enthought 版本 EPD 7 3 2 32 位 它是我的默认框
  • Python int 太大,无法放入 SQLite

    我收到错误 OverflowError Python int 太大 无法转换为 SQLite INTEGER 来自以下代码块 该文件约25GB 因此必须分部分读取 length 6128765 Works on partitions of
  • urllib2.urlopen() 是否实际获取页面?

    当我使用 urllib2 urlopen 时 我在考虑它只是为了读取标题还是实际上带回整个网页 IE 是否真的通过 urlopen 调用或 read 调用获取 HTML 页面 handle urllib2 urlopen url html
  • FastText - 由于 C++ 扩展未能分配内存,无法加载 model.bin

    我正在尝试使用 FastText Python APIhttps pypi python org pypi fasttext https pypi python org pypi fasttext虽然 据我所知 此 API 无法加载较新的
  • 在pycharm中调试python代码

    这个问题类似于this https stackoverflow com questions 10240018 how to use pycharm to debug python script一 我正在尝试调试pyethapp https
  • 使用 lambda 函数更改属性值

    我可以使用 lambda 函数循环遍历类对象列表并更改属性值 对于所有对象或满足特定条件的对象 吗 class Student object def init self name age self name name self age ag
  • 如何对字符串列表进行排序?

    在 Python 中创建按字母顺序排序的列表的最佳方法是什么 基本回答 mylist b C A mylist sort 这会修改您的原始列表 即就地排序 要获取列表的排序副本而不更改原始列表 请使用sorted http docs pyt
  • 如何在SqlAlchemy中执行“左外连接”

    我需要执行这个查询 select field11 field12 from Table 1 t1 left outer join Table 2 t2 ON t2 tbl1 id t1 tbl1 id where t2 tbl2 id is
  • 将此 MATLAB 代码转换为 Python 时我做错了什么?

    我正在努力将生成波形的 MATLAB 代码转换为 Python 就上下文而言 这是原子力显微镜带激发响应的模拟 与代码错误无关 在 MATLAB 中从 r vec 生成的图形与我在 Python 中生成的图形不同 我是否正确地将 MATLA

随机推荐

  • pygame全屏模式退出

    我正在运行这个小程序 它以全屏模式将图像加载到屏幕上 但是一旦加载 程序将不会通过任何组合键退出 我最终不得不重置计算机才能完成我正在做的任何其他事情 import pygame pygame init WIDTH 1366 HEIGHT
  • 获取由 css column-width 创建的列数[重复]

    这个问题在这里已经有答案了 可能的重复 如何在 Javascript 中获取 css3 多列计数 https stackoverflow com questions 6989306 how to get css3 multi column
  • 为什么ArrayList类的removeRange方法不起作用? [复制]

    这个问题在这里已经有答案了 我正在尝试使用removeRange从中删除某些元素的方法ArrayList 我从这里开始了解这个方法 http docs oracle com javase 7 docs api java util Array
  • 如何组织嵌入式项目中的代码?

    高度嵌入式 有限的代码和 RAM 大小 项目给代码组织带来了独特的挑战 我见过很多完全没有组织的项目 主要是由硬件工程师完成的 根据我的经验 他们通常不关心代码的非功能方面 但是 我一直在尝试相应地组织我的代码 硬件特定 驱动程序 初始化
  • 文本浮动在图像旁边的块中

    我想实现以下定位 两个不同的文本 块中 浮动 内嵌在图像旁边 div 内的所有内容 我一直在尝试使用不同的显示设置 块 内联文本等 但它仍然无法正常工作 HTML div class res img src gt span TITLEe s
  • 在 MATLAB 中序列化多维数组以进行数据库插入的最简单方法?

    我似乎找不到任何用于序列化数据的标准函数 我有一个大型 128x51 数组 需要将其存储在单个数据库字段中 如果没有某种序列化 事情就会出现问题 解决这个问题的最好方法是什么 我不太使用matlab 所以我不熟悉标准程序 一种可能性是使用T
  • 使用 openrowset 将 Excel 文件读入临时表;我如何引用该表?

    我正在尝试编写一个存储过程 它将 Excel 文件读入临时表 然后处理该表中的一些数据 然后将该表中选定的行插入到永久表中 所以 它是这样开始的 SET SQL select into mytemptable FROM OPENROWSET
  • 单击“模块”选项卡时,是否可以让 Doxygen 直接显示唯一的模块?

    考虑以下单文件项目 defgroup api Public API This is foo and bar together ingroup api void foobar Nothing here to see 在包含该文件的目录中 我运
  • 在循环中延迟释放资源的正确方法?

    我需要在循环中对数据库进行 SQL 查询 for rows Next fields err db Query if err nil defer fields Close do something with fields 什么会更好 保持原样
  • WPF MVVM 文本框验证

    我正在使用 MVVM 创建 WPF 应用程序 我有一个文本框 它绑定到我的 ViewModel 类型中的一个属性double默认值为 0 0 如果我现在在文本框中输入文本值 例如 abc 则在失去焦点时 文本框会突出显示 指示值不正确 但是
  • 正则表达式查找 = 之后的字符串

    我对正则表达式真的很陌生 我一直在四处寻找答案 但要么它不起作用 要么我遇到某种错误 所以我会尝试问这个问题 希望有人可以指导我 我有一个看起来像这样的字符串 str 汽车 品牌 萨博 车轮 4 我不知道你是否可以直接获得几个不同的匹配 或
  • Excel 2007 PageSetup.FitToPagesWide 问题

    我一直在尝试使用 C 在 Excel 2007 的 Microsoft Visual Studio 项目中设置 Excel 页面的页面缩放比例 代码看起来像这样 private void Sheet1 Startup object send
  • Java TemporaryFolder getRoot() 异常

    我正在尝试在我的 junit 之一中使用 org junit rules TemporaryFolder 来测试文件 I O 我已经这样初始化它 Code Rule public TemporaryFolder temporaryFolde
  • 如何将行名称转换为第一列?

    我有一个像这样的数据框 df VALUE ABS CALL DETECTION P VALUE 1007 s at 957 729231881542 P 0 00486279317241156 1053 at 320 63270128336
  • Google App Engine Jinja2 和 Markupsafe

    谷歌表示 MarkupSafe 让 jina2 运行得更快here https developers google com appengine docs python tools libraries27 我已将其添加到我的 Yaml 文件中
  • 检查文件是否已经打开

    我需要编写一个自定义批处理文件重命名器 我已经完成了大部分工作 只是我不知道如何检查文件是否已经打开 我只是使用java io File包里有一个canWrite 方法 但这似乎并没有测试该文件是否正在被另一个程序使用 关于如何使这项工作有
  • JavaScript 中什么是好的数学集合实现?

    哪里有一个好的 JavaScript 数学集合实现 它应该包括交集 并集 补集和 奖励点 笛卡尔积的有效实现 不 这不是家庭作业 我有一个 yubikey 它是一个 USB 键盘 可以输入从 16 个键码中选择的序列来输入 128 位一次性
  • 如何列出用“skip-worktree”忽略的文件

    我用过git update index skip worktree
  • 尝试安装 python-docx(错误:无法找到 vcvarsall.bat)

    我已经尝试了一切 但我不知道从这里该去哪里 当我调用命令时pip install python docx我明白了 running build ext building lxml etree extension error Unable to
  • 如何快速将字典拆分为多个字典

    我找到了一个解决方案 但它真的很慢 def chunks self data SIZE 10000 for i in xrange 0 len data SIZE yield dict data items i i SIZE 您是否有任何不