Verifica che la variabile sia una stringa o meno in Python
-
Usa la funzione
type()
per verificare se una variabile è una stringa o meno -
Usa la funzione
isinstance()
per verificare se una variabile è una stringa o meno
Il tipo di dati stringa viene utilizzato per rappresentare una raccolta di caratteri. Questo tutorial discuterà come verificare se una variabile è di tipo stringa o meno.
Usa la funzione type()
per verificare se una variabile è una stringa o meno
La funzione type()
restituisce il tipo di classe della variabile passata. Il codice seguente mostra come utilizzare questa funzione per verificare se una variabile è una stringa o meno.
value = "Yes String"
if type(value) == str:
print("True")
else:
print("False")
Produzione:
True
Tuttavia, vale la pena notare che questo metodo è generalmente sconsigliato ed è definito unidiomatico in Python. Il motivo è che l’operatore ==
confronta la variabile solo per la classe stringa e restituirà False
per tutte le sue sottoclassi.
Usa la funzione isinstance()
per verificare se una variabile è una stringa o meno
È quindi incoraggiato l’uso della funzione isinstance()
rispetto al tradizionale type()
. La funzione isinstance()
controlla se un oggetto appartiene alla sottoclasse specificata. Il seguente frammento di codice spiegherà come possiamo usarlo per verificare la presenza di oggetti stringa.
value = "Yes String"
if isinstance(value, str):
print("True")
else:
print("False")
Produzione:
True
In Python 2, possiamo usare la classe basestring
, che è una classe astratta per str
e unicode
, per verificare se un oggetto è un’istanza di str
o unicode
. Per esempio,
value = "Yes String"
if isinstance(value, basestring):
print("True")
else:
print("False")
Produzione:
True
Per usare il metodo sopra in Python 3, possiamo usare il modulo six
. Questo modulo ha funzioni che ci permettono di scrivere codice compatibile sia con Python 2 che con 3.
La funzione string_types()
restituisce tutti i possibili tipi di dati stringa. Per esempio,
import six
value = "Yes String"
if isinstance(value, six.string_types):
print("True")
else:
print("False")
Produzione:
True
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.
LinkedInArticolo correlato - Python String
- Come controllare una stringa è vuota in modo pitonico
- Converti una stringa in nome variabile in Python
- Come rimuovere gli spazi bianchi in una stringa in Python
- Estrai numeri da una stringa in Python
- Come convertire una stringa in datario in Python
- Come convertire una stringa in minuscola in Python 2 e 3