python - 满量唯一均匀分布随机选择生成器
问题描述
如何实现生成器函数以从域中生成一些值,这些值应该在输出数据范围内均匀随机分布。
我希望随机选择的值是唯一的,并且永远不会再次被选择
例如,如果我的范围是:
A, B, C, D, E, F, H, I
我想E
进行一些迭代,例如B
在下一个迭代中,再也不要得到这两个。
数据没有预先填充在内存中,因此pop()
不是解决方案;并且数据量可能非常大,因此预生成和混洗数据也不是解决方案。所以我想使用生成器函数来生成它们。
我考虑过LFSR
双射映射功能,但是有更好的解决方案吗?
解决方案
推荐阅读
- android - FCM 通知在发布应用程序中不起作用
- django - 如何在 F 表达式中使用 jsonfield?
- python - Keras OCR 是否支持其他语言?
- java - 在运行 wildfly 的服务器(RHE7)上部署战争后出现 ClassNotFound 异常
- java - Firebase 远程配置不适用于 Google Play 上的实时版本
- php - php 中的 substr() 不索引过去的 '<' html 标签
- python - Pandas + BeautifulSoup - 如何在 for 循环下将数据添加到新列但同一行
- php - 加快 Mariadb 中的插入速度
- linux - 如何在 Ubuntu 上使用 .NET 核心应用程序获得总 CPU % 和 Memory% 使用率
- php - Laravel Blade 返回“路由名称”的输出,而不是 URI