生成具有一定数量的每个字符的字符序列

雅各布·达拉斯

因此,我目前正在使用以下方式将字符序列生成为字符串:

def nth(lists, num):
    res = []
    for a in lists:
        res.insert(0, a[num % len(a)])
        num //= len(a)
    return res

def generate_page(chars, length, iteration):
    result = nth([chars] * length, iteration)
    return "".join(result)

length = 15
seed = 16
number = generate_page('0123456789ABC', length, seed)

但是我无法确定的是,如果我知道每个字符要多少,我将如何生成一个字符序列。

例如,假设我要生成一个序列,该序列具有1个“ A”,3个“ B”和1个“ C”,如何获得“ ABBBC”的任何排列?

我想我只想串联一个我知道我想要的金额的列表,然后像下面这样加乱它们:

A = 1
B = 3
C = 1
listOfCharacters = ["A"]*A + ["B"]*B + ["C"]*C
>>> ['A', 'B', 'B', 'B', 'C']
random.seed(1)
listOfCharacters = random.shuffle(listOfCharacters)
>>> None
listOfCharacters = ''.join(listOfCharacters)
>>> TypeError

但是现在很明显正在收到TypeError,甚至不确定这是否是检索所有排列而不用种子重复的最佳途径。

Eb946207

只是这样做:

import itertools
match = 'ABBBC' #string of letter combinations to match.
permutations = itertools.permutations(match) #get all
all_combos = list({''.join(per) for per in permutations}) #use sets to remove duplicates

的值all_combos是所有可能组合的列表。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

删除某个字符后的一定数量的字符

如何使用Java自动填充数组。每个字符有特定数量

将一个字符串包装成一定数量的行

创建一个具有一定数量字符的变量

创建具有一定数量的元音和辅音的字符数组(Java)

如何检查字符串是否具有一定数量的字母和数字?

选择具有一定数量字符的表格中的特定单词

如何合并具有一定数量子字符串的字符串以在Python的数据框中生成某些组

匹配bash中具有一定数量的唯一字符的字符串

仅替换一定数量的字符

从末尾删除一定数量的字符

具有一组字符而不是一个字符的序列比对算法

在 DrRacket 中,如何检查字符串是否包含一定数量的字符,以及如何确定字符串中的第一个字符是什么

在一定数量的字符后分割字符串

删除字符串后一定数量的字符

给定一个字符串,如何生成所有可能的子字符串数组,其中每个子字符串最多包含N个字符,但不少于M个字符?

如何生成一个字符串中的每个字符之间的随机字符?

随机密码生成器,客户端可以更改每个字符的数量

如何生成具有一定数量的整数的文本文件?

固定集合中的随机序列,每个序列至少包含一个字符

如何按每个字符串具有的元音数量以降序对字符串数组进行排序

将字母定义为任何字母字符串,然后用于以后检查单词是否具有一定数量的字符

在目录中删除一定数量的带有一系列字符的文件

ReactJS-如何使每个字符具有多个颜色的字符串

用grep期望通配符中有一定数量的字符

设置JButton的宽度以容纳一定数量的字符

达到一定数量的字符后如何换行

一定数量的字符后,Stdout循环暂停

需要使用CSS定位一定数量的字符