import itertools
printable = 'abcdefghijklmnopqrstuvwxz'
all_possibilites = ([''.join(i) for i in itertools.product(printable, repeat = 3)])
comparison = ['zd']
if comparison in all_possibilities:
print("match")
Dies ist ein Code-Schnipsel. Meine Absicht ist es, jede einzelne Kombination des Alphabets zu generieren. Das Snippet hat hier eine Grenze von drei Zeichen. Wenn das Limit zu groß ist, gibt Python einen Speicherfehler zurück. Meine Frage ist:Wie kann ich falsche Ergebnisse aus dem Speicher entfernen?
Gibt es eine Möglichkeit, aus dem Speicher die Kombinationen zu entfernen, die nicht übereinstimmten, damit die einzige Beschränkung Zeit statt Speicher ist? sagen, wenn das Zeichenlimit 5 war? Jede weitere Lektüre wäre hilfreich.
Was genau ist der Zweck, den Sie erreichen möchten? Was meinst du mit allen möglichen Kombinationen des Alphabets? Es wird unendlich viele Kombinationen geben, wenn Sie die Wiederholungsgröße in Richtung Unendlichkeit erhöhen. Jede n-Buchstaben-Kombination, die du machst, existiert, also was ist der Zweck eines Vergleichs? Wenn ich itertools.product (Bereich (3), wiederholen = 3) haben Sie jede mögliche 3-stellige Kombination von 0,1 und 2 - Sie müssen nicht überprüfen, ob es existiert oder nicht. Natürlich füllt sich der Speicher schnell. Mit n = 5 haben Sie bereits 26^5 Kombinationen. – Daniel