通过4个数字的组合运行 [英] Running through combinations of 4 numbers

查看:22
本文介绍了通过4个数字的组合运行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要一个代码,它将遍历4个数字的可能组合,例如,1234将产生1234,1243,1324的24个组合.ECT等。但不做[‘1’,‘12’,‘123’等]我只希望它是4个数字长度组合,(只是改变顺序)
较长的选项是

    import random

对4个数字中的一个进行随机化,对另一个数字进行随机化,再对另一个数字进行随机化,检查该组合是否已打印或类似操作已添加到包含可能的组合的数组中,然后最终打印出所有组合。

array = ['1234', '1243', '1342', '1324' ect]


不过,这将需要很长时间,而且效率非常低。 对编码非常陌生:) 谢谢

推荐答案

使用itertools.permutations()str.join()函数的解决方案:

import itertools

n = '1234'
a = [''.join(i) for i in itertools.permutations(n, 4)]

print(a)   # prints 24 permutations

输出:

['1234', '1243', '1324', '1342', '1423', '1432', '2134', '2143', '2314', '2341', '2413', '2431', '3124', '3142', '3214', '3241', '3412', '3421', '4123', '4132', '4213', '4231', '4312', '4321']

这篇关于通过4个数字的组合运行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆