ich ein einfaches Python-Programm geschrieben haben:Python itertools.combinations_with_replacement Rückkehr nicht alle Kombinationen
#!/usr/bin/env python3.5
import sys, itertools
sCharacters = '123'
for iCombinationLength in range(0, len(sCharacters)+1):
for aCombination in itertools.combinations_with_replacement(sCharacters, iCombinationLength):
print(''.join(aCombination))
Das gibt das folgende:
1
2
3
11
12
13
22
23
33
111
112
113
122
123
133
222
223
233
333
jedoch für sie alle Kombinationen der Zahlen zu 1 2 und 3, müsste es gehören:
311
312
313
321
322
323
331
332
333
Und wie Sie oben sehen können, tut es nicht. Ich habe andere Beiträge gesehen, in denen die combinations_with_replacement-Funktion als Lösung angegeben wurde, um alle möglichen Kombinationen der übergebenen Zeichen zu erhalten. Dies scheint jedoch nicht zu geschehen. Was mache ich hier falsch, und wie bekomme ich alle möglichen Kombinationen der Zeichen in der Zeichenvariablen?
Vielen Dank für Ihre Zeit ;-)
Perfekt !! Danke für die Lösung, sehr geschätzt. – user2109254
Wenn Sie mehr darüber wissen möchten, was 'itertools.product' tatsächlich macht, lesen Sie über [Kartesische Produkte] (https://en.wikipedia.org/wiki/Cartesian_product). – pzp