Prüfen Sie Variable ist String oder nicht in Python

Manav Narula 30 Januar 2023
  1. Verwenden Sie die Funktion type(), um zu überprüfen, ob eine Variable eine Zeichenkette ist oder nicht
  2. Verwenden Sie die Funktion isinstance(), um zu überprüfen, ob eine Variable eine Zeichenkette ist oder nicht
Prüfen Sie Variable ist String oder nicht in Python

Der String-Datentyp wird verwendet, um eine Sammlung von Zeichen darzustellen. In diesem Tutorial wird erläutert, wie Sie überprüfen, ob eine Variable ein Zeichenkettentyp ist oder nicht.

Verwenden Sie die Funktion type(), um zu überprüfen, ob eine Variable eine Zeichenkette ist oder nicht

Die Funktion type() gibt den Klassentyp der übergebenen Variablen zurück. Der folgende Code zeigt, wie Sie mit dieser Funktion überprüfen können, ob eine Variable eine Zeichenkette ist oder nicht.

value = "Yes String"
if type(value) == str:
    print("True")
else:
    print("False")

Ausgabe:

True

Es ist jedoch anzumerken, dass diese Methode im Allgemeinen nicht empfohlen wird und in Python als unidiomatisch bezeichnet wird. Der Grund dafür ist, dass der Operator == die Variable nur für die Zeichenkettenklasse vergleicht und für alle Unterklassen False zurückgibt.

Verwenden Sie die Funktion isinstance(), um zu überprüfen, ob eine Variable eine Zeichenkette ist oder nicht

Es wird daher empfohlen, die Funktion isinstance() gegenüber der traditionellen Funktion type() zu verwenden. Die Funktion isinstance() prüft, ob ein Objekt zur angegebenen Unterklasse gehört. Das folgende Codefragment erklärt, wie wir damit nach Zeichenkettenobjekten suchen können.

value = "Yes String"
if isinstance(value, str):
    print("True")
else:
    print("False")

Ausgabe:

True

In Python 2 können wir die Klasse basestring verwenden, eine abstrakte Klasse für str und unicode, um zu testen, ob ein Objekt eine Instanz von str oder unicode ist. Beispielsweise,

value = "Yes String"
if isinstance(value, basestring):
    print("True")
else:
    print("False")

Ausgabe:

True

Für die Verwendung der obigen Methode in Python 3 können wir das Modul six verwenden. Dieses Modul verfügt über Funktionen, mit denen wir Code schreiben können, der sowohl mit Python 2 als auch mit Python 3 kompatibel ist.

Die Funktion string_types() gibt alle möglichen Typen für String-Daten zurück. Beispielsweise,

import six

value = "Yes String"
if isinstance(value, six.string_types):
    print("True")
else:
    print("False")

Ausgabe:

True
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Verwandter Artikel - Python String