Υπάρχει τρόπος να ελέγξετε αν ο τύπος μιας μεταβλητής στην python είναι string. όπως:
isinstance(x,int);
για ακέραιες τιμές;
Στην Python 2.x, θα κάνατε
isinstance(s, basestring)
Η basesring
είναι η αφηρημένη υπερκλάση των str
και unicode
. Μπορεί να χρησιμοποιηθεί για να ελέγξετε αν ένα αντικείμενο είναι μια περίπτωση της str
ή της unicode
.
Στην Python 3.x, ο σωστός έλεγχος είναι
isinstance(s, str)
Η κλάση bytes
δεν θεωρείται τύπος συμβολοσειράς στην Python 3.
Η ενότητα type υπάρχει επίσης αν ελέγχετε περισσότερα από ints και strings. http://docs.python.org/library/types.html
Επεξεργασία βάσει καλύτερης απάντησης παρακάτω. Πηγαίνετε προς τα κάτω περίπου 3 απαντήσεις και μάθετε για τη δροσιά του basestring.
Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Παλιά απάντηση: Μπορείτε να πάρετε από διάφορα μέρη, συμπεριλαμβανομένων όλων των κλήσεων COM στα Windows.
if isinstance(target, str) or isinstance(target, unicode):