排列的定义:从n个不同元素中,任取m(m≤n,m与n均为自然数,下同)个元素按照一定的顺序排成一列,叫做从n个不同元素中取出m个元素的一个排列;从n个不同元素中取出m(m≤n)个元素的所有排列的个数,叫做从n个不同元素中取出m个元素的排列数。
公式:n!/(n-m)!
就是n的阶乘除以(n-m)! 0!=1
排列与顺序有关。
排列关键词 itertools.permutations( ,)
import itertools # 第一个参数 "0123456789":可迭代对象 # 第二个参数6:排列的位数,默认是可迭代对象的长度 li=tuple(itertools.permutations("0123456789",6)) # print(li) print(type(li)) print(len(li)) mima=input("银行卡密码:") for i in li: a="".join(i) #li是个元组,i是li里面的一个个字符串,密码是一个6位字符串,所以需要join()进行字符串拼接 if a==mima: print("ok") break