随重复而变化
给定一个列表,例如两个元素 l = [1,0]
我需要创建所有可能的 5 元素重复变体。我尝试过 itertools.combinations 但给了我我想要的。
给定 n = 2
和 k = 5
我应该得到 2^5 = 32
元素,结果应如下所示:
results = [11111,11110,11101,11100,11001,11011,11010,...00000]
Given a list of e.g. two elements l = [1,0]
I need to create all possible 5-element variations with repetitions. I've tried itertools.combinations but give me what I wanted.
With given n = 2
and k = 5
I should get 2^5 = 32
elements and the result should look like this:
results = [11111,11110,11101,11100,11001,11011,11010,...00000]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这相当于循环 0..k^n-1 并输出以 n 为基数的当前索引。这将您的问题减少到基数转换(本质上相当于长除法)。
This is equivalent to looping over 0..k^n-1 and outputting the current index in base n. Which reduces your problem to base conversion (which is essentially equivalent to long division).