简体   繁体   English

python中的小写和大写排列

[英]Permutation lowercase and uppercase in python

I want this result but not by string ,by input() and Number of characters unknown!我想要这个结果,但不是通过字符串,通过 input() 和未知字符数!

mystring = 'abcd'
for a in (mystring[0].upper(), mystring[0].lower()):
    for b in (mystring[1].upper(), mystring[1].lower()):
        for c in (mystring[2].upper(), mystring[2].lower()):
            for d in (mystring[3].upper(), mystring[3].lower()):
                print(a+b+c+d)

One approach using swapcase and itertools.permutation:使用swapcase和 itertools.permutation 的一种方法:

from itertools import product

mystring = 'abcd'
cases = zip(*[mystring, mystring.swapcase()])
for permutation in product(*cases):
    print("".join(permutation))

Output输出

abcd
abcD
abCd
abCD
aBcd
aBcD
aBCd
aBCD
Abcd
AbcD
AbCd
AbCD
ABcd
ABcD
ABCd
ABCD

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM