我有一个100个字典的字典,我必须创建10个分组的10个元素的那个dicionary。一个组的元素必须从字典的元素中随机选择。我该怎么做?字典元素的随机分组
-1
A
回答
1
你可以使用一个发电机来产生随机值:
import random
def random_group(d, size=10):
keys = list(d.keys())
random.shuffle(keys)
for i in range(0, len(keys), size):
yield [(key, d[key]) for key in keys[i:i + size]]
由此产生的10(key, value)
对组在一个时间:
for group in random_group(your_dictionary):
print group
可以调节功能产生只是按键,只是值或字典代替:
yield keys[i:i + size] # list of keys
yield [d[key] for key in keys[i:i + size]] # list of values
yield {key: d[key] for key in keys[i:i + size]} # dictionary
+0
我试着它,我得到:TypeError:shuffle()需要至少2个参数(1给出)...无论如何,使用这种方法,有可能在一个以上grupo重复一个元素,不它? –
+0
最重要的要求是,字典中的一个元素不能在组 –
+0
@ user1068980中重复:错误修正(忘了实际指定我们正在洗牌)。不,不会有任何重复。 –
相关问题
- 1. 随机化数组元素
- 2. 随机数组元素
- 3. Python字典麻烦:按元组中的元素分组
- 4. 将随机元素排序为字典? Python的
- 5. 随机元素
- 6. 组成元素字典
- 7. 随机分配列表中的元素
- 8. 比较字典键的元组元素
- 9. 随机化我的数组元素
- 10. 随机化数组中的元素?
- 11. 数组中的随机元素
- 12. 随机将一组元素分成若干组
- 13. 随机/随机化一组带有两个子元素的div
- 14. 从字典中选择一个随机元组
- 15. 分发数组元素随机到新的阵列
- 16. HTML :: PullParser随机分割文本元素
- 17. 用PHP随机输出数组元素
- 18. 在java中随机化一组元素
- 19. 重复随机数组元素
- 20. 数组操作 - 随机选择元素
- 21. 如何打印随机数组元素?
- 22. F#一组随机元素<string>
- 23. 随机选取一组元素在Python
- 24. Javascript数组随机化元素到选定的元素
- 25. 从数组的特定元素中选择随机元素
- 26. 元素字典
- 27. 随机定位的元素
- 28. 页上的随机元素
- 29. 获取元素的组合在字典
- 30. 经典ASP随机文字
值或键?或两者? –
我是sry,我不明白。你有一个有100个条目的巨大字典。你想把它分成10个单词,每个单词包含10个条目? – pypat
两者。字典的结构是{id:(element1,element2,element3)}。编号从0到99.因此,在我的组中,我必须选择一个从0到99的随机数字并从字典中获取此元素。这样,直到得到10组10个元素。 –