相关疑难解决方法(0)

每个长度为N个随机,连续和非重叠的子序列

我试图获得序列的n个随机和非重叠切片,其中每个子序列的长度为l,最好是它们出现的顺序.

这是我到目前为止的代码,每次尝试使它工作变得越来越混乱,不用说它不起作用.

def rand_parts(seq, n, l):
    """
    return n random non-overlapping partitions each of length l.
    If n * l > len(seq) raise error.
    """
    if n * l > len(seq):
        raise Exception('length of seq too short for given n, l arguments')
    if not isinstance(seq, list):
        seq = list(seq)
    gaps = [0] * (n + 1)
    for g in xrange(len(seq) - (n * l)):
        gaps[random.randint(0, len(gaps) - 1)] += 1
    result = []
    for i, g in enumerate(gaps):
        x = …
Run Code Online (Sandbox Code Playgroud)

python random list

2
推荐指数
1
解决办法
1621
查看次数

标签 统计

list ×1

python ×1

random ×1