Ich bin auf der Suche nach einer Funktion oder einem kurzen Programm, das eine Zeichenfolge (bis zu 10 Buchstaben) erhält und es mischt.
danke Arielshuffle string in python
32
A
Antwort
42
Es gibt eine Funktion shuffle in dem zufälligen Modul. Beachten Sie, dass es in-Place gemischt wird, also müssen Sie zuerst Ihre Zeichenfolge in eine Liste von Zeichen konvertieren, mischen und dann erneut an das Ergebnis anschließen.
import random
l = list(s)
random.shuffle(l)
result = ''.join(l)
66
>>> import random
>>> s="abcdef123"
>>> ''.join(random.sample(s,len(s)))
'1f2bde3ac'
-2
Eine alternative nehmen für schlurfenden eine Zeichenfolge:
# Python < 3
import random, array
def shuffle_text(text):
if isinstance(text, unicode):
temp= array.array('u', text)
converter= temp.tounicode
else:
temp= array.array('c', text)
converter= temp.tostring
random.shuffle(temp)
return converter()
Ich habe diese Antwort nur der Vollständigkeit halber; auf meinem langsamen Home-Server ist es schneller für kleine Eingabe-Strings (aber der Unterschied ist sehr klein), während es für größere Strings langsamer ist.
Verwandte Themen
- 1. Zufälligkeit von Shuffle in Python
- 2. shuffle Fehler in hadoop
- 3. Shuffle ein Array in PHP nicht wirklich Shuffle Array
- 4. SwiftyJSON Shuffle
- 5. Pyspark: shuffle RDD
- 6. Shuffle Songs in Musik-Player
- 7. Shuffle-Matrix-Element in Matlab
- 8. Shuffle array swift 3
- 9. Zufall Shuffle und Funktionszeiger
- 10. Lazy Shuffle-Algorithmen
- 11. Playlist Shuffle ein/aus
- 12. Python Shuffle, so dass die Position nie wiederholt wird
- 13. Vaadin shuffle ListSelect
- 14. C++ Array Shuffle
- 15. Shuffle Groups Algorithmus
- 16. Text Shuffle JQuery/Javascript
- 17. Parallel Computing - Shuffle
- 18. Shuffle divs mit angularJS
- 19. shuffle vs permute numpy
- 20. MapReduce Shuffle Phase Flaschenhals
- 21. String manupulation in Python
- 22. String-Manipulation in Python
- 23. String-Matching in Python?
- 24. String-Umkehrung in Python
- 25. String in Python manipulieren
- 26. Python String '"': einzelnes Doppelzitat in String
- 27. Python: String in String-Check schlägt fehl
- 28. Python-String
- 29. Shuffle und Sample in Array-Klasse deaktivieren
- 30. Shuffle-Daten in der LMDB-Datei
+1 für die "In-Place". So wird 'print random.shuffle (['a', 'b', 'c'])' '' None' zurückgeben. Wir müssen 'L = ['a', 'b', 'c']' und dann 'random.shuffle (L)' und 'print L' verwenden. – Basj