python - 如何以可变的 dict 长度同时迭代 dict 项?
问题描述
我想遍历具有n
键和值的字典。
例如:
d = {0:"batched data", 1:"batched data", 2:"batched data", ..., n: "batched data"}
由于批处理数据是 pytorch DataLoader形式的,因此它不能索引,只能迭代。
因此,我如何一次遍历所有 dict 批处理数据:
我在想 zip 可能有用,但是当长度可变时我不确定如何计算它。
例如,如果n=3
:
for index, data in enumerate(zip(d[0],d[1],d[2])):
会起作用,但是如何将其推广到任意数量的 dict 元素?
解决方案
查看命令的输出:
for index, data in enumerate(zip(d[0],d[1],d[2])):
print("{} -> {}".format(index, data))
在我看来,这将处理一般情况:
d = {0:"batched data", 1:"batched data", 2:"batched data", 3: "batched data"}
for index, data in enumerate(zip(*d.values())):
print("{} -> {}".format(index, data))
输出:
0 -> ('b', 'b', 'b', 'b')
1 -> ('a', 'a', 'a', 'a')
2 -> ('t', 't', 't', 't')
3 -> ('c', 'c', 'c', 'c')
4 -> ('h', 'h', 'h', 'h')
5 -> ('e', 'e', 'e', 'e')
6 -> ('d', 'd', 'd', 'd')
7 -> (' ', ' ', ' ', ' ')
8 -> ('d', 'd', 'd', 'd')
9 -> ('a', 'a', 'a', 'a')
10 -> ('t', 't', 't', 't')
11 -> ('a', 'a', 'a', 'a')
推荐阅读
- python - 熊猫,根据其他列创建“订单”列
- eclipse - Eclipse '建筑遇到问题'
- javascript - 我想用 React 每 10 秒刷新一次 api 部分
- vegan - 3dvegan 包中 ordiplot3d NMDS 的问题
- php - PHP cURL不适用于具有远程服务器关系的本地主机
- flutter - Flutter VLC Player 实现
- javascript - 通过动态组件将插槽传递给孙子
- python - PySpark 打印结果和将其写入数据库之间的区别
- python - 如何从电报频道或群组中自动删除/踢成员?
- docker - 错误:x86_64 上的 docker buildx 用于构建 multiarch--x86_64、arm64