Ich versuche zu überprüfen, ob eine Zeichenkette numerisch ist oder nicht die isnumerische Funktion verwendet, aber die Ergebnisse sind nicht wie erwartet. Die Funktion funktioniert nur, wenn sie eine Unicode-Zeichenkette ist.
%Vor%isnumeric funktioniert nur, wenn seine Unicode..Alle Gründe?
Oft möchten Sie überprüfen, ob eine Zeichenfolge in Python eine Zahl ist. Dies passiert die ganze Zeit, zB mit Benutzereingaben, Daten abholen von eine Datenbank (die eine Zeichenfolge zurückgeben kann) oder eine Datei mit Zahlen. Abhängig davon, welche Art von Nummer Sie erwarten, können Sie Verwenden Sie mehrere Methoden. Wie das Parsen der Zeichenfolge, mit Regex oder einfach versuchen, es in eine Zahl zu konvertieren und zu sehen, was das passiert. Häufig werden Sie auch Nicht-ASCII-Nummern finden, die in codiert sind Unicode. Dies können Zahlen sein oder auch nicht. Zum Beispiel 2, was 2 in Thai. Allerdings ist © einfach das Copyright-Symbol und ist natürlich kein a Nummer.
link: Ссылка
Laut der Python-Dokumentation ist isnumeric
nur für Unicode-Objekte vorhanden :
Die folgenden Methoden sind nur für Unicode-Objekte verfügbar:
unicode.isnumeric ()
Gibt True zurück, wenn nur numerische Zeichen in S vorhanden sind, andernfalls False. Numerische Zeichen umfassen Ziffernzeichen und alle Zeichen, die die Unicode-Zahlenwerteigenschaft aufweisen, z. U + 2155, VULGAR FRACTION EINE FÜNFTE.
isnumeric()
hat die Unterstützung für verschiedene Zahlensysteme in Unicode-Strings erweitert.
In Amerika und Europa wird das hindu-arabische Zahlensystem verwendet, das aus 0123456789 Ziffern besteht.
Die hindu-arabischen Ziffern werden vom Unicode auch als europäische Ziffern bezeichnet.
Es gibt andere verfügbare Zahlensysteme wie:
Weitere Informationen zu Zahlensystemen finden Sie hier: wikiwand.com/de/Numerals_in_Unicode#/Numerals_by_script
Unicode subscript
, superscript
und fractions
werden von der Funktion isnumeric()
ebenfalls als gültige Zahlen betrachtet.
Sie können die Funktion isnumeric () unten verwenden, um zu überprüfen, ob eine Zeichenfolge eine Nicht-Unicode-Nummer ist.
%Vor%Bearbeiten: Ich werde diesen Beitrag aktualisieren, sobald ich genug Reputation habe, um mehr als 2 Links zu dieser Antwort hinzuzufügen.
Tags und Links python