Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyPmCdOTCh 144 of 208 menu
◀ ▶

Έλεγχος τύπου αντικειμένου στην Python

Για να ελέγξετε τον τύπο ενός στοιχείου, πρέπει να εφαρμόσετε τη συνάρτηση isinstance. Παίρνει ως πρώτη παράμετρο το στοιχείο και ως δεύτερη - τον τύπο στον οποίο ελέγχεται. Σε αυτήν την περίπτωση ως όνομα για τη δεύτερη παράμετρο λαμβάνονται τα ονόματα συναρτήσεων που μετατρέπουν δεδομένα στον αντίστοιχο τύπο: για συμβολοσειρές - str, αριθμών - int, λιστών - list κ.λπ. Η συνάρτηση isinstance επιστρέφει boolean τιμές: αν το στοιχείο αντιστοιχεί στον τύπο, τότε θα επιστραφεί True, διαφορετικά περίπτωση - False.

Παράδειγμα

Ας υποθέσουμε ότι έχουμε μια μεταβλητή tst. Ας ελέγξουμε αν η τιμή της είναι συμβολοσειρά. Για να το κάνετε αυτό, γράψτε στα δεξιά του if τη συνάρτηση isinstance. Στις παραμέτρους της περνάμε το tst και τον τύπο str. Αν η τιμή και ο τύπος δεδομένων ταιριάζουν, τότε ας εμφανιστεί το αντίστοιχο μήνυμα:

tst = 'a' if isinstance(tst, str): print('string')

Αποτέλεσμα εκτέλεσης του κώδικα:

'string'

Παράδειγμα

Τώρα ας ελέγξουμε αν η μεταβλητή είναι ακέραιος αριθμός:

tst = 12 if isinstance(tst, int): print('integer')

Αποτέλεσμα εκτέλεσης του κώδικα:

'integer'

Παράδειγμα

Για να ελέγξετε αν το tst είναι αριθμός κινητής υποδιαστολής, στη δεύτερη παράμετρο του isinstance θα πρέπει να περάσετε τον τύπο float:

tst = 12.0 if isinstance(tst, float): print('float')

Αποτέλεσμα εκτέλεσης του κώδικα:

'float'

Παράδειγμα

Τώρα ας γράψουμε μια συνθήκη για να ελέγξουμε το tst ως λίστα:

tst = [1, 2, 3] if isinstance(tst, list): print('list')

Αποτέλεσμα εκτέλεσης του κώδικα:

'list'

Παράδειγμα

Ας ελέγξουμε αν η μεταβλητή είναι tuple:

tst = (1, 2, 3) if isinstance(tst, tuple): print('tuple')

Αποτέλεσμα εκτέλεσης του κώδικα:

'tuple'

Παράδειγμα

Τώρα ας ορίσουμε μια συνθήκη για να μάθουμε αν η τιμή της μεταβλητής είναι λεξικό:

tst = {'a': 1, 'b': 2, 'c': 3} if isinstance(tst, dict): print('dictionary')

Αποτέλεσμα εκτέλεσης του κώδικα:

'dictionary'

Πρακτικές ασκήσεις

Ας υποθέσουμε ότι έχετε μια μεταβλητή. Ελέγξτε αν η τιμή της είναι ακέραιος αριθμός.

Μάθετε αν η δεδομένη μεταβλητή είναι αριθμός κινητής υποδιαστολής.

Ελέγξτε αν η μεταβλητή περιέχει τιμή συμβολοσειράς.

Ελέγξτε αν η δεδομένη μεταβλητή είναι λεξικό.

Ελέγξτε αν η δεδομένη μεταβλητή είναι σύνολο.

Ελέγξτε αν η δεδομένη μεταβλητή είναι tuple.

Ελέγξτε αν η δεδομένη μεταβλητή είναι λίστα.

← →
↑
Ελληνικά▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη