*Memo:
permutations() can return the iterator which permutates the elements of iterable
one by one to return a tuple of zero or more elements one by one as shown below:
*Memo:
- The 1st argument is
iterable
(Required-Type:Iterable). - The 2nd argument is
r
(Optional-Default:None
-Type:int
or NoneType):- It's the length of the returned tuple.
- If it's
None
or not set, the length ofiterable
is used. - It must be
0 <= x
.
from itertools import permutations
v = permutations(iterable='')
v = permutations(iterable='', r=None)
v = permutations(iterable='', r=0)
v = permutations(iterable=[])
print(v)
# <itertools.permutations object at 0x000001BE9908AE30>
print(next(v)) # ()
print(next(v)) # StopIteration:
from itertools import permutations
v = permutations(iterable='A')
v = permutations(iterable='A', r=1)
v = permutations(iterable=['A'])
print(next(v)) # ('A',)
print(next(v)) # StopIteration:
from itertools import permutations
v = permutations(iterable='AB')
v = permutations(iterable='AB', r=2)
v = permutations(iterable=['A', 'B'])
print(next(v)) # ('A', 'B')
print(next(v)) # ('B', 'A')
print(next(v)) # StopIteration:
from itertools import permutations
v = permutations(iterable='ABC')
v = permutations(iterable='ABC', r=3)
v = permutations(iterable=['A', 'B', 'C'])
print(next(v)) # ('A', 'B', 'C')
print(next(v)) # ('A', 'C', 'B')
print(next(v)) # ('B', 'A', 'C')
print(next(v)) # ('B', 'C', 'A')
print(next(v)) # ('C', 'A', 'B')
print(next(v)) # ('C', 'B', 'A')
print(next(v)) # StopIteration:
from itertools import permutations
for x in permutations(iterable='ABCD'):
# for x in permutations(iterable='ABCD', r=4):
# for x in permutations(iterable=['A', 'B', 'C', 'D']):
print(x)
# ('A', 'B', 'C', 'D')
# ('A', 'B', 'D', 'C')
# ('A', 'C', 'B', 'D')
# ('A', 'C', 'D', 'B')
# ('A', 'D', 'B', 'C')
# ('A', 'D', 'C', 'B')
# ('B', 'A', 'C', 'D')
# ('B', 'A', 'D', 'C')
# ('B', 'C', 'A', 'D')
# ('B', 'C', 'D', 'A')
# ('B', 'D', 'A', 'C')
# ('B', 'D', 'C', 'A')
# ('C', 'A', 'B', 'D')
# ('C', 'A', 'D', 'B')
# ('C', 'B', 'A', 'D')
# ('C', 'B', 'D', 'A')
# ('C', 'D', 'A', 'B')
# ('C', 'D', 'B', 'A')
# ('D', 'A', 'B', 'C')
# ('D', 'A', 'C', 'B')
# ('D', 'B', 'A', 'C')
# ('D', 'B', 'C', 'A')
# ('D', 'C', 'A', 'B')
# ('D', 'C', 'B', 'A')
from itertools import permutations
for x in permutations(iterable='ABCD', r=3):
# for x in permutations(iterable=['A', 'B', 'C', 'D'], r=3):
print(x)
# ('A', 'B', 'C')
# ('A', 'B', 'D')
# ('A', 'C', 'B')
# ('A', 'C', 'D')
# ('A', 'D', 'B')
# ('A', 'D', 'C')
# ('B', 'A', 'C')
# ('B', 'A', 'D')
# ('B', 'C', 'A')
# ('B', 'C', 'D')
# ('B', 'D', 'A')
# ('B', 'D', 'C')
# ('C', 'A', 'B')
# ('C', 'A', 'D')
# ('C', 'B', 'A')
# ('C', 'B', 'D')
# ('C', 'D', 'A')
# ('C', 'D', 'B')
# ('D', 'A', 'B')
# ('D', 'A', 'C')
# ('D', 'B', 'A')
# ('D', 'B', 'C')
# ('D', 'C', 'A')
# ('D', 'C', 'B')
from itertools import permutations
for x in permutations(iterable='ABCD', r=2):
# for x in permutations(iterable=['A', 'B', 'C', 'D'], r=2):
print(x)
# ('A', 'B')
# ('A', 'C')
# ('A', 'D')
# ('B', 'A')
# ('B', 'C')
# ('B', 'D')
# ('C', 'A')
# ('C', 'B')
# ('C', 'D')
# ('D', 'A')
# ('D', 'B')
# ('D', 'C')
from itertools import permutations
for x in permutations(iterable='ABCD', r=1):
# for x in permutations(iterable=['A', 'B', 'C', 'D'], r=1):
print(x)
# ('A',)
# ('B',)
# ('C',)
# ('D',)
from itertools import permutations
for x in permutations(iterable='ABCD', r=0):
# for x in permutations(iterable=['A', 'B', 'C', 'D'], r=0):
print(x)
# ()
from itertools import permutations
for x in permutations(iterable='ABCD', r=5):
# for x in permutations(iterable=['A', 'B', 'C', 'D'], r=5):
print(x)
# Nothing
Top comments (0)