Wenn ich einen String in Kleinbuchstaben umwandelte, wie würde ich ihn wieder in die ursprüngliche Zeichenfolge konvertieren, die der Benutzer eingegeben hat? Ich habe nach einer bestimmten Python-Funktion gesucht, die die Zeichenfolge in die ursprüngliche Zeichenfolge zurück konvertiert. Ich habe .swapcase()
verwendet, aber leider hat es nicht funktioniert. Bitte beachten Sie, dass die .lower()
benötigt wird.Original-Gehäuse des Wiederherstellungsstrings wiederherstellen
Antwort
Sie können nicht. "AbC" und "aBc" werden beide zu "abc", wenn sie kleiner sind. Wenn eine unlowercase
Methode existiert, wie könnte sie zwischen diesen beiden Fällen unterscheiden? Sollte es "AbC" oder "aBc" zurückgeben? Denken Sie daran, dass Strings keine "Erinnerung" an die Buchstaben haben, die sie enthielten.
Leider gibt es dafür keine Funktion. Anstatt zu fragen, warum Sie dies tun müssen, würde ich empfehlen, eine separate Liste zu führen, die verfolgt, welche Zeichen in der Zeichenfolge geändert wurden. Zwei Ansätze dazu würden beibehalten:
1.) Behalten Sie eine Liste der Indizes, die in der ursprünglichen Zeichenfolge Großbuchstaben waren und geändert wurden.
2.) Führen Sie eine Liste der Länge n, wobei n die Länge Ihrer Zeichenfolge ist, wobei der Wert wahr ist, wenn das Zeichen von .lower geändert wurde.
Mithilfe dieses Stils könnten Sie eine Hilfsfunktion schreiben, die die Kleinbuchstabe-Methode ausführt, die diese Liste für Sie erstellt, sowie die komplementäre unlowercase-Methode. Oder, logisch gesehen, könnten Sie einfach eine Instanz der ursprünglichen Variablen speichern, wie alle sagen.
Sie können es nicht zurück konvertieren. Was Sie tun können, ist die ursprüngliche Stich halten und nur eine neue Variable für die Klein machen:
original = 'AbC'
lowered = original.lower()
Was könnten Sie auch speichern zu tun ist, um beide Werte in einem dict. Zum Beispiel, wenn die Zeichenfolge ist ein Name wie ‚John Smith‘ und Sie wollen sowohl ‚John Smith‘ verwenden zu können und ‚John Smith‘ später Sie das tun könnten:
name = {"original": "John Smith", "lowercase": "john smith"}
print(name["original"])
//prints 'John Smith'
print(name["lowercase"])
//prints 'john smith'
Ich hoffe, das hilft bei dem, was Sie erreichen möchten.
- 1. Speichern und Wiederherstellen des Anwendungsfensterstatus
- 2. Manuelles Wiederherstellen des Pycharm-Indexes
- 3. Wiederherstellen des Administratorkennworts für SONAR
- 4. VIM Wiederherstellen des letzten Suchmusters
- 5. Wie Kleinbuchstaben Dateinamen in einer Batchdatei mit Originalgehäuse ersetzen?
- 6. Kerndatenfehler nach dem Wiederherstellen des persistenten Speichers
- 7. Wiederherstellen des Programmstatus aus einer Core-Datei
- 8. Wiederherstellen des Präsentationsservers Shared Folder - OBIEE 11g
- 9. Möglichkeiten zum Wiederherstellen des SQL Server-Kontopassworts?
- 10. AppCompat ActionBar Wiederherstellen des ursprünglichen Layouts
- 11. wiederherstellen/wiederherstellen Tabelle
- 12. Wiederherstellen und Wiederherstellen Szenario
- 13. Wiederherstellen Anwendungsstatus
- 14. TortoiseGit - Wiederherstellen?
- 15. PuTTY Shortcuts zum Minimieren, Maximieren, Wiederherstellen und Verschieben des Fensters
- 16. Angular2 - Wiederherstellen des vorherigen Werts beim Abbrechen in Zweiwege-Datenbindung
- 17. Speichern und Wiederherstellen des minimierten Zustandes von ExpandableListActivity mit SimpleCursorTreeAdapter
- 18. Speichern und Wiederherstellen des Status einer Aktivität - Bündel immer null?
- 19. Wiederherstellen des Standard-Dienstkontos von Google App Engine
- 20. Wie kann ich das Löschen des .git-Verzeichnisses wiederherstellen?
- 21. Wiederherstellen des Werts eines Eingabetyps = Datei nach fehlgeschlagener Validierung
- 22. Heroku pgbackups: Syntaxfehler beim Wiederherstellen des lokalen Hosts
- 23. MapView des Staates auf drehen Wiederherstellen und auf der Rückseite
- 24. Wiederherstellen der vorherigen Version des Codes in Xcode
- 25. wiederherstellen überschrieben window.JSON Objekt
- 26. vim Bildschirm wiederherstellen
- 27. Wiederherstellen der formatierten Partition
- 28. Wiederherstellen von Subversion Korruption
- 29. Standard-CSS-Attribute wiederherstellen
- 30. TFS-Quellcode-Kontrollbindungen wiederherstellen
Warum überschreiben, wenn Sie das Original benötigen? Speichern Sie es in einer anderen Variablen. Dies sieht wie ein Fall von [XY-Problem] aus (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). –
Sie können nicht, haben Sie Informationen verloren, indem Sie es unterlegen, dass Sie nicht zurück erhalten können. Wie @BhargavRao sagt, behalte das Original einfach ** bei. – jonrsharpe
Wie erwarten Sie, dass diese Funktion funktioniert? Woher weiß es, ob 'f (" my string ")' '' MY STRING "' oder '" My String "' oder '" My StriNg "' zurückgeben soll? – Phylogenesis