Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

type() en isinstance() in Python met voorbeelden

Wat is type() in Python?

Python heeft een ingebouwde functie genaamd type() die je helpt het klassetype van de variabele te vinden die als invoer is opgegeven. Als de invoer bijvoorbeeld een tekenreeks is, krijgt u de uitvoer als , voor de lijst is dit , enz.

Met de opdracht type() kunt u een enkel argument doorgeven, en de geretourneerde waarde is het klassetype van het gegeven argument, bijvoorbeeld:type(object).

Het is ook mogelijk om drie argumenten door te geven aan type(), d.w.z. type(name, bases, dict), in dat geval zal het u een nieuw type object teruggeven.

In deze tutorial leer je:

  • Wat is type() in Python?
  • Syntaxis voor type():
  • Voorbeeld van type()
  • Voorbeeld:type() gebruiken voor klasseobject.
  • Voorbeeld:de naam, bases en dict gebruiken in type()
  • Wat is isinstance() in Python?
  • Syntaxis isinstance():
  • Voorbeelden van isinstance()
  • Verschil tussen type() en isinstance() in Python

Syntaxis voor type():

type() kan op twee manieren worden gebruikt, zoals hieronder weergegeven:

 type(object)
type(namr, bases, dict)


Parameters :type(object)

  • object:dit is een verplichte parameter. Als dit alleen een parameter is die is doorgegeven aan type(), dan zal het je het type van de parameter teruggeven.

Parameters :type(naam, bases, dict)

  • naam:naam van de klas.
  • bases:(optioneel). Dit is een optionele parameter en het is de basisklasse
  • dict:(optioneel). Dit is een optionele parameter en het is een naamruimte die de definitie van de klasse heeft.

Retourwaarde:

Als het object de enige parameter is die aan type() is doorgegeven, dan zal het je het type van het object teruggeven.

Als de parameters die aan type worden doorgegeven een type is (object, basen, dict), zal het in dat geval een nieuw type object retourneren.

Voorbeeld van type()

In dit voorbeeld hebben we een stringwaarde, number , float value, een complex number, list, tuple , dict en set. We zullen de variabelen met type gebruiken om de uitvoer voor elk van hen te zien.

str_list = "Welcome to Guru99"
age = 50
pi = 3.14
c_num = 3j+10
my_list = ["A", "B", "C", "D"]
my_tuple = ("A", "B", "C", "D")
my_dict = {"A":"a", "B":"b", "C":"c", "D":"d"}
my_set = {'A', 'B', 'C', 'D'}

print("The type is : ",type(str_list))
print("The type is : ",type(age))
print("The type is : ",type(pi))
print("The type is : ",type(c_num))
print("The type is : ",type(my_list))
print("The type is : ",type(my_tuple))
print("The type is : ",type(my_dict))
print("The type is : ",type(my_set))

Uitvoer:

The type is :<class 'str'>
The type is :<class 'int'>
The type is :<class 'float'>
The type is :<class 'complex'>
The type is :<class 'list'>
The type is :<class 'tuple'>
The type is :<class 'dict'>
The type is :<class 'set'>

Voorbeeld:type() gebruiken voor klasseobject.

Wanneer u het object dat is gemaakt op basis van een klasse controleert met type(), retourneert het het klassetype samen met de naam van de klasse. In dit voorbeeld zullen we een klasse maken en het objecttype controleren dat is gemaakt op basis van de klassentest.

class test:
    s = 'testing'

t = test()
print(type(t))

Uitvoer:

<class '__main__.test'>

Voorbeeld:de naam, grondtalen en dictaat gebruiken in type()

Het type kan ook worden aangeroepen met behulp van de syntaxis:type(name, bases, dict).

De drie parameters die aan type() worden doorgegeven, d.w.z. naam, basen en dict zijn de componenten waaruit een klassedefinitie bestaat. De naam vertegenwoordigt de klassenaam, de bases is de basisklasse en dict is het woordenboek van basisklasseattributen.

In dit voorbeeld gaan we alle drie de parameters gebruiken, namelijk naam, basen en dict in type().

Voorbeeld:

class MyClass:
  x = 'Hello World'
  y = 50

t1 = type('NewClass', (MyClass,), dict(x='Hello World', y=50))
print(type(t1))
print(vars(t1))

Uitgang:

<class 'type'>
{'x': 'Hello World', 'y': 50, '__module__': '__main__', '__doc__': None}

Wanneer u alle drie de argumenten doorgeeft aan type() , helpt het u om een ​​nieuwe klasse te initialiseren met kenmerken van de basisklasse.

Wat is isinstance() in Python?

Python isinstance maakt deel uit van de ingebouwde functies van Python. Python isinstance() neemt twee argumenten op en retourneert true als het eerste argument een instantie is van de classinfo die als tweede argument is opgegeven.

Syntaxis isinstance()

isinstance(object, classtype)

Parameters

  • object:een object waarvan u de instantie vergelijkt met classtype. Het zal true retourneren als het type overeenkomt met anders false.
  • klasse type:een type of een klasse of een reeks typen en/of klassen.

Retourwaarde:

Het zal true retourneren als het object een instantie van classtype is en false als dat niet het geval is.

Voorbeelden van isinstance()

In deze sectie zullen we verschillende voorbeelden bestuderen om te leren isinstance()

Voorbeeld:isinstance() Integer check

De onderstaande code vergelijkt integer waarde 51 met type int. Het zal true retourneren van het type 51 overeenkomsten met int anders false.

age = isinstance(51,int)
print("age is an integer:", age)

Uitgang:

age is an integer: True

Voorbeeld:isinstance() Float check

In dit voorbeeld gaan we de float-waarde vergelijken met het type float, d.w.z. 3.14 waarde wordt vergeleken met het type float.

pi = isinstance(3.14,float)
print("pi is a float:", pi)

Uitgang:

pi is a float: True

Voorbeeld:isinstance() Tekenreekscontrole

message = isinstance("Hello World",str)
print("message is a string:", message)

Uitgang:

message is a string: True

Voorbeeld:isinstance() Tuple check

De code controleert op een tuple (1,2,3,4,5) met het type tuple. Het zal true retourneren als de gegeven invoer van het type tuple is en false als dat niet het geval is.

my_tuple = isinstance((1,2,3,4,5),tuple)
print("my_tuple is a tuple:", my_tuple)

Uitgang:

my_tuple is a tuple: True

Voorbeeld:isinstance() Controle instellen

De code controleert op een set ({1,2,3,4,5},met type set. Het zal true retourneren als de gegeven invoer van het type set is en false als dat niet het geval is.

my_set = isinstance({1,2,3,4,5},set)
print("my_set is a set:", my_set)

Uitgang:

my_set is a set: True

Voorbeeld:isinstance() lijstcontrole

De code zoekt naar een lijst [1,2,3,4,5],met typelijst. Het zal true retourneren als de gegeven invoer van het type list is en false als dat niet het geval is.

my_list = isinstance([1,2,3,4,5],list)
print("my_list is a list:", my_list)

Uitgang:

my_list is a list: True

Voorbeeld:isinstance() dictaatcontrole

De code controleert op een dict ({“A”:”a”, “B”:”b”, “C”:”c”, “D”:”d”},met het type dict. Het zal true retourneren als de gegeven invoer is van het type dict en onwaar als dat niet het geval is.

my_dict = isinstance({"A":"a", "B":"b", "C":"c", "D":"d"},dict)
print("my_dict is a dict:", my_dict)

Uitgang:

my_dict is a dict: True

Voorbeeld:isinstance() test op een klasse

De code toont de typecontrole van class met isinstance() . Het object van de klasse wordt vergeleken met de naam van de klasse binnen isinstance(). Het geeft true terug als het object tot de klasse behoort en anders false.

class MyClass:
    _message = "Hello World"

_class = MyClass()

print("_class is a instance of MyClass() : ", isinstance(_class,MyClass))

Uitgang:

_class is a instance of MyClass() True

Verschil tussen type() en isinstance() in Python

type() instance()
Python heeft een ingebouwde functie genaamd type() die je helpt het klassetype van de variabele te vinden die als invoer is opgegeven. Python heeft een ingebouwde functie genaamd isinstance() die de waarde vergelijkt met het gegeven type. Als de opgegeven waarde en het type overeenkomen, wordt true geretourneerd, anders false.
De geretourneerde waarde is een type object De geretourneerde waarde is een Boolean, d.w.z. waar of onwaar.
class A:
my_listA = [1,2,3]

class B(A):
my_listB = [1,2,3]

print(type(A()) == A)
print(type(B()) == A)

Uitgang:

True
False

In het geval van type geeft de subklassecontrole false terug.

class A:
my_listA = [1,2,3]

class B(A):
my_listB = [1,2,3]

print(isinstance(A(), A))
print(isinstance(B(), A))

Uitgang:

True
True

isinstance() geeft een waarheidswaarde wanneer gecontroleerd met een subklasse.

Samenvatting:

  • Python heeft een ingebouwde functie genaamd type() die je helpt het klassetype van de variabele te vinden die als invoer is opgegeven. Als de invoer bijvoorbeeld een tekenreeks is, krijgt u de uitvoer als , voor de lijst is dit , enz.
  • Voor type() kun je een enkel argument doorgeven, en de geretourneerde waarde is het klassetype van het gegeven argument, bijvoorbeeld type(object).
  • Het is ook mogelijk om drie argumenten door te geven aan type(), d.w.z. type(name, bases, dict), in dat geval zal het je een nieuw type object teruggeven.
  • Python heeft een ingebouwde functie genaamd instance() die de waarde vergelijkt met het opgegeven type. Als de opgegeven waarde en het type overeenkomen, wordt true geretourneerd, anders false. Met isinstance() kun je testen op string, float, int, list, tuple, dict, set, class, etc.
  • Met de methode isinstance() kun je testen op string, float, int, list, tuple, dict, set, class, etc.

Python

  1. C#-expressies, statements en blokken (met voorbeelden)
  2. Python Type Conversie en Type Casting
  3. Python-nummers, typeconversie en wiskunde
  4. Botten bouwen met Raspberry Pi en Python
  5. Python String count() met VOORBEELDEN
  6. Python String format() Leg uit met VOORBEELDEN
  7. Methode Python String find() met voorbeelden
  8. Python Lambda-functies met VOORBEELDEN
  9. Python round() functie met VOORBEELDEN
  10. Python map() functie met VOORBEELDEN
  11. Python Timeit() met voorbeelden