Ich möchte zufällige Buchstaben von einer Zeichenfolge trennen.Python: Ein Element ohne Ersatz auswählen
Da s = „Howdy“
Ich mag würde Elemente zur Auswahl ‚s‘ ohne Ersatz, sondern halten die Indexnummer.
Zum Beispiel
>>> random.sample(s,len(s))
['w', 'h', 'o', 'd', 'y']
ist in der Nähe, was ich will, aber ich würde tatsächlich so etwas wie
[('w', 2), ('h', 0) bevorzugen, (‘ o ', 1), (' d ', 3), (' y ', 4)]
mit Buchstaben-Index-Paaren. Dies ist wichtig, weil derselbe Buchstabe mehr als einmal in 's' erscheint. dh "Buchstabe", wobei "t" zweimal erscheint, aber ich muss das erste "t" von der zweiten unterscheiden.
Idealerweise brauche ich eigentlich nur Buchstaben zu generieren/auszuwählen, wie ich sie brauche, aber alle Buchstaben auf einmal zu scrambling und zu berechnen (dh in einer Liste wie oben gezeigt) ist in Ordnung.
Ich würde etwas ähnliches vorschlagen, aber Sie sollten die 'list (enumerate (s))' Trick oben verwenden: 'return random.shuffle (Liste (enumerate (s)))' – jemfinch
Ja, der einzige Vorteil Dies ist wirklich, wenn Sie stattdessen etwas funky mit der Auswahl der Indizes, die Sie stattdessen verwenden möchten, tun möchten, und dann könnten Sie tun, gefolgt von den letzten zwei Zeilen hier. –