欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python输出自定义有起点终点的字典脚本

程序员文章站 2024-03-26 11:45:59
...

python3有起点终点的字母字典

生成1-6位自定义有起点终点的字母,数字,字母或数字字典,欢迎大家学习交流。

#输出有起点终点的字母
def zimu(min1,max1):
    try:
        x='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
        m={}
        y={}
        k=0
        u=0
        if len(min1)==len(max1):
            n=len(min1)
            if n==1:
                for a in range(0,52):
                    y[0]=x[a]
                    m[k]=y[0]
                    if min1==m[k]:
                        u=1
                    if max1==m[k]:
                        print(m[k])
                        u=-1
                        break
                    if u==1:
                        print(m[k])
                    if u==0:
                        print('\r'+"距开始剩余进度为:",k,"/",52**1,end="",flush=True)
                    k=k+1
            elif n==2:
                for a in range(0,52):
                    if u==-1:
                        break
                    y[0]=x[a]
                    for b in range(0,52):
                        y[1]=x[b]
                        m[k]=y[0]+y[1]
                        if min1==m[k]:
                            u=1
                        if max1==m[k]:
                            print(m[k])
                            u=-1
                            break
                        if u==1:
                            print(m[k])
                        if u==0:
                            print('\r'+"距开始剩余进度为:",k,"/",52**2,end="",flush=True)
                        k=k+1
            elif n==3:
                for a in range(0,52):
                    if u==-1:
                        break
                    y[0]=x[a]
                    for b in range(0,52):
                        if u==-1:
                            break
                        y[1]=x[b]
                        for c in range(0,52):
                            y[2]=x[c]
                            m[k]=y[0]+y[1]+y[2]
                            if min1==m[k]:
                                u=1
                            if max1==m[k]:
                                print(m[k])
                                u=-1
                                break
                            if u==1:
                                print(m[k])
                            if u==0:
                                print('\r'+"距开始剩余进度为:",k,"/",52**3,end="",flush=True)
                            k=k+1
            elif n==4:
                for a in range(0,52):
                    if u==-1:
                        break
                    y[0]=x[a]
                    for b in range(0,52):
                        if u==-1:
                            break
                        y[1]=x[b]
                        for c in range(0,52):
                            if u==-1:
                                break
                            y[2]=x[c]
                            for d in range(0,52):
                                y[3]=x[d]
                                m[k]=y[0]+y[1]+y[2]+y[3]
                                if min1==m[k]:
                                    u=1
                                if max1==m[k]:
                                    print(m[k])
                                    u=-1
                                    break
                                if u==1:
                                    print(m[k])
                                if u==0:
                                    print('\r'+"距开始剩余进度为:",k,"/",52**4,end="",flush=True)
                                k=k+1
            elif n==5:
                for a in range(0,52):
                    if u==-1:
                        break
                    y[0]=x[a]
                    for b in range(0,52):
                        if u==-1:
                            break
                        y[1]=x[b]
                        for c in range(0,52):
                            if u==-1:
                                break
                            y[2]=x[c]
                            for d in range(0,52):
                                if u==-1:
                                    break
                                y[3]=x[d]
                                for e in range(0,52):
                                    y[4]=x[e]
                                    m[k]=y[0]+y[1]+y[2]+y[3]+y[4]
                                    if min1==m[k]:
                                        u=1
                                    if max1==m[k]:
                                        print(m[k])
                                        u=-1
                                        break
                                    if u==1:
                                        print(m[k])
                                    if u==0:
                                        print('\r'+"距开始剩余进度为:",k,"/",52**5,end="",flush=True)
                                    k=k+1
            elif n==6:
                for a in range(0,52):
                    if u==-1:
                        break
                    y[0]=x[a]
                    for b in range(0,52):
                        if u==-1:
                            break
                        y[1]=x[b]
                        for c in range(0,52):
                            if u==-1:
                                break
                            y[2]=x[c]
                            for d in range(0,52):
                                if u==-1:
                                    break
                                y[3]=x[d]
                                for e in range(0,52):
                                    if u==-1:
                                        break
                                    y[4]=x[e]
                                    for f in range(0,52):
                                        y[5]=x[f]
                                        m[k]=y[0]+y[1]+y[2]+y[3]+y[4]+y[5]
                                        if min1==m[k]:
                                            u=1
                                        if max1==m[k]:
                                            print(m[k])
                                            u==-1
                                        if u==1:
                                            print(m[k])
                                        if u==-1:
                                            break
                                        if u==0:
                                            print('\r'+"距开始剩余进度为:",k,"/",52**6,end="",flush=True)
                                        k=k+1
            else:
                print("请输入1到6位字符串")
            print()       
        else:
            print("请输入相同长度字符串")
    except BaseException:
        print("请输入字母")
min1=input("请输入起始字符串")
max1=input("请输入终止字符串")
zimu(min1,max1)