Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich in Python überprüfen, ob ein String eine Ganzzahl darstellt, ohne Try/Except zu verwenden?

Wie kann ich in Python überprüfen, ob ein String eine Ganzzahl darstellt, ohne Try/Except zu verwenden?

Barbara Streisand
Barbara StreisandOriginal
2024-12-27 16:55:10256Durchsuche

How Can I Verify if a String Represents an Integer in Python Without Using Try/Except?

Integer-Strings ohne Try/Except überprüfen

Bei der Arbeit mit Strings ist es oft notwendig zu bestimmen, ob ein String eine Ganzzahl darstellt. Traditionell wurde dies mithilfe eines Try/Except-Mechanismus erreicht, um eine Ganzzahlkonvertierung zu versuchen und Ausnahmen zu behandeln, wenn dies fehlschlägt. Es gibt jedoch alternative Ansätze, die den Aufwand der Ausnahmebehandlung vermeiden.

isdigit für positive ganze Zahlen

Für positive ganze Zahlen kann die Python-Funktion .isdigit() verwendet werden . Es gibt True zurück, wenn die Zeichenfolge ausschließlich aus Ziffern besteht, andernfalls False:

>>> '16'.isdigit()
True

Negative ganze Zahlen mit Präfixprüfung

Dieser Ansatz funktioniert nicht für negative ganze Zahlen. Um damit umzugehen, können Sie nach einem Bindestrich-Präfix suchen und dann testen, ob die verbleibenden Zeichen Ziffern sind:

>>> s = '-17'
>>> s.startswith('-') and s[1:].isdigit()
True

Umgang mit Dezimalpunkten

Die obige Methode ist unzureichend beim Umgang mit Zeichenfolgen, die Dezimalpunkte enthalten. Um dies zu beheben, ist ein etwas komplexerer Ansatz erforderlich:

def check_int(s):
    if s[0] in ('-', '+'):
        return s[1:].isdigit()
    return s.isdigit()

Diese Funktion prüft auf ein positives oder negatives Präfix und verwendet dann .isdigit(), um die verbleibenden Zeichen zu validieren.

Das obige ist der detaillierte Inhalt vonWie kann ich in Python überprüfen, ob ein String eine Ganzzahl darstellt, ohne Try/Except zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn