如何创建包含 2 个和 1 个值的列表的伪随机洗牌,其中 1 个值不能连续出现

阿普洛

我想创建一个包含 15 个数字 1 值和 60 个数字 2 值的列表,然后我希望该列表以一种永远不会有超过一次出现值 1 的方式随机排列行(例如,它永远不会是 22212222122 11 2212

超级感谢任何帮助或指示!

阿尤什

这是我将如何做到的。

生成一组 15 个索引,使得没有一个索引是相邻的。
在您的最终列表中,如果该索引存在于集合中,则加 1,否则加 2。

这是我在代码中所说的:

import random

random_list = []
one_indices = set()

while len(one_indices) != 15:
    idx = random.randint(0, 74)
    if not {idx, idx+1, idx-1} & one_indices:
        one_indices.add(idx)

for idx in range(75):
    if idx in one_indices:
        random_list.append(1)
    else:
        random_list.append(2)

print(random_list)

注意:
if not {index, index+1, index-1} & one_indices:
只是一种更高级的说法
if index not in one_indices and (index+1) not in one_indices and (index-1) not in one_indices:

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何构建一个输出 1 个离散值和 1 个连续值的 DQN?

如何计算> = 3个连续1个值在数据框列中的出现次数

如何使用mysql从3个表中显示2个值和1个值

如何流式传输2个列表并修改1个值

如何使图像在设备中型时连续出现 2 个,在小型设备上出现 1 个

如何从包含在 Teradata SQL 中的 1 列中的 name 和 surename 创建 2 个新列?

如何通过 groupby("col1") 创建一个包含 0 和 1 值的新列?

如何将包含相同参数子集和相同值的2个函数组合为1个函数?

从2个表和1个条件中选择值

插入1个已知值和2个选择

如何创建一个包含1 2和3的所有字符串且不超过4个2的正则表达式?

如何从表中的2个值内联接正确的值,其中1个正确

python - 如何从字典中为包含2个值的新行打印1个值?

如何创建一个包含1 ... N的数组

如何在Scheme中创建一个使包含1,2,3,4,5 ...到n的列表的函数

当同一URL中有2个动态值且其中1个连续变化时,如何使用正则表达式?

按1个连续和多个逻辑值分组

如何获得形状为(32,224,224)的np数组,其中[0]包含(244,224)个1和[1]仅2个?

使用 C# 中的 1 个键和 2 个值创建数据结构,并检索特定键的值

如何使用循环每 2.8 个单位创建新的 x1 和 x2 值?

R中是否有一个函数可以让我创建一个新列,其中包含(1)完整的国家名称和(2)各自的大陆?

使2个文本值显示在1个列表项中

如何2个包含HashMap合并成1

如何检查数组包含1到n ^ 2个整数?

如何创建一个包含 5 个块的 CSS 网格(第 1 行 2 个,第 2 行 3 个)

如何从列和前后列中返回第 1 2...n 个非空值

我应该如何将 2 个测试组传递给空手道:1 个忽略组和 1 个包含组

如何从2个字符串向量创建1和0矩阵?

如何选择数据集的第 1 个、第 2 个和第 3 个?