请问全排列要怎么排列

来源:4-8 Python之嵌套循环

半勺暖阳

2021-04-04 17:24

s1 = 'ABC'

s2 = '123'

s3 = 'xyz'

result = ''

for a in s1:

    for b in s2:

        for c in s3:

            print(a+b+c)

之后要怎么继续排列,才能得到全排列?

如果继续print(a+c+b)把六种方式都列出来感觉有点赘余,假如要列的不止三个字符长度而是n个,要怎么写简便的代码?

写回答 关注

6回答

  • LVXC
    2021-10-02 17:49:24

    # Enter a code

    s1 = 'ABC'

    s2 = '123'

    s3 = 'xyz'

    for i in s1:

        for j in s2:

            for k in s3:

                print(i + j + k)

                print(i + k + j)

                print(j + k + i)

                print(j + i + k)

                print(k + j + i)

                print(k + i + j)


  • Cassie7J
    2021-06-10 11:00:29

    # Enter a code

    #coding=UTF-8

    import itertools  

            

    s1='ABC'

    s2='123'

    s3='xyz'

    count = 0

    for x in s1:

        for y in s2:

            for z in s3:

                for i in itertools.permutations([x,y,z],3):

                    print(i)


    Cassie...

    用python内置的全排列函数哈哈哈哈,内部原理好难写

    2021-06-10 11:00:57

    共 1 条回复 >

  • 慕先生2494268
    2021-05-19 10:32:08

    http://img2.mukewang.com/60a478760001034d02920158.jpg酱?虽然很弱智但是好歹是个办法

    weixin...

    多了一些重复使用的结果比如AAA之类的

    2022-06-28 16:01:14

    共 1 条回复 >

  • 万象天心
    2021-04-05 21:31:55

    如果按你的思路的话 我想不出

    如果实现目的的话 你可以试试这样 看看对不对

    s1 = 'ABC'
    s2 = '123'
    s3 = 'xyz'
    s = s1 + s2 + s3
    count = 0
    for a in s:
        for b in s:
            for c in s:
                if (a != b and b != c and a != c ):
                    print(a+b+c)
                    count+=1
    print(count)
    print(9*8*7)


    寂寞高手

    这个count+=1是啥意思啊,+=是啥

    2023-01-08 02:45:21

    共 4 条回复 >

  • 万象天心
    2021-04-05 16:30:24

    A1x

    A1y

    A1z

    A2x

    A2y

    A2z

    A3x

    A3y

    A3z

    B1x

    B1y

    B1z

    B2x

    B2y

    B2z

    B3x

    B3y

    B3z

    C1x

    C1y

    C1z

    C2x

    C2y

    C2z

    C3x

    C3y

    C3z

    这个不行吗

    半勺暖阳

    还有Ax1,1Ax,1xA,xA1,x1A……等等呢,全排列有9*8*7种方式

    2021-04-05 18:19:30

    共 1 条回复 >

  • 万象天心
    2021-04-04 19:57:38

    你想要什么样的全排列

    半勺暖阳

    就所有字符的全排列,全部列出来

    2021-04-05 12:08:01

    共 2 条回复 >

Python3 入门教程(新版)

python3入门教程,让你快速入门并能编写简单的Python程序

154175 学习 · 1075 问题

查看课程

相似问题