Funkcja type() jest najczęściej używana do celów debugowania. Do funkcji type() można przekazać dwa różne typy argumentów, pojedynczy i trzy argumenty. Jeśli zostanie przekazany pojedynczy argument type(obj), zwracany jest typ danego obiektu. Jeśli zostaną przekazane trzy typy argumentów (obiekt, podstawy, dykt), zwracany jest obiekt nowego typu.
Funkcja type() w Pythonie Składnia
Składnia: typ(obiekt, podstawy, dykt)
Parametry:
- obiekt: Wymagany. Jeśli określono tylko jeden parametr, funkcja type() zwraca typ tego obiektu
- podstawy: krotka klas, z których wywodzi się bieżąca klasa. Później odpowiada atrybutowi __bases__.
- dyktuj: słownik przechowujący przestrzenie nazw dla klasy. Później odpowiada atrybutowi __dict__.
Powrót: zwraca nową klasę typu lub zasadniczo metaklasę.
Jak działa funkcja type(). w Pythonie?
W podanym przykładzie drukujemy typ zmiennej x. Określimy typ obiektu w Pythonie.
Python3
znaczenie komisji selekcyjnej personelu
x>=> 10> print>(>type>(x))> |
>
>Wyjście
>
Przykłady funkcji type() w Pythonie
Za pomocą funkcji type() możemy określić typ obiektu w Pythonie. Poniżej znajduje się kilka innych przykładów związanych z funkcją type():
Znajdowanie typu obiektu Pythona
Tutaj sprawdzamy typ obiektu za pomocą funkcji type() w Pyton .
Python3
program do dziedziczenia w Pythonie
a>=> (>'Geeks'>,>'for'>,>'Geeks'>)> b>=> [>'Geeks'>,>'for'>,>'Geeks'>]> c>=> {>'Geeks'>:>1>,>'for'>:>2>,>'Geeks'>:>3>}> d>=> 'Hello World'> e>=> 10.23> f>=> 11.22> print>(>type>(a))> print>(>type>(b))> print>(>type>(c))> print>(>type>(d))> print>(>type>(e))> print>(>type>(f))> |
>
>Wyjście
>
Sprawdź, czy obiekt jest typu w Pythonie
W tym przykładzie testujemy obiekt za pomocą warunków i drukujemy wartość logiczną.
Python3
print>(>type>([])>is> list>)> print>(>type>([])>is> not> list>)> print>(>type>(())>is> tuple>)> print>(>type>({})>is> dict>)> print>(>type>({})>is> not> list>)> |
>
pętla for w c
>Wyjście
True False True True True>
Używanie type() z instrukcją warunkową
W tym przykładzie używamy funkcji type() do określenia typu obiektu w Pythonie za pomocą warunkowej instrukcji if-else.
Python3
# Example variables> my_tuple>=> (>10>,>'Hello'>,>45>,>'Hi'>)> my_dict>=> {>1>:>'One'>,>2>:>'Two'>,>3>:>'Three'>}> # Check if the variables have the same object type> if> type>(my_tuple)>is> not> type>(my_dict):> >print>(>'The variables have different object types.'>)> else>:> >print>(>'The variables have the same object type.'>)> |
>
>Wyjście
The variables have different object types.>
Python type() z 3 parametrami
W podanym przykładzie tworzymy plik klasa bez klasy bazowej i klasę pochodną klasy bazowej. Funkcja type() umożliwia programowe definiowanie klas i ich atrybutów w czasie wykonywania.
Python3
numpy znaczy
# New class(has no base) class with the> # dynamic class initialization of type()> new>=> type>(>'New'>, (>object>, ),> >dict>(var1>=>'techcodeview.com'>, b>=>2009>))> # Print type() which returns class 'type'> print>(>type>(new))> print>(>vars>(new))> # Base class, incorporated> # in our new class> class> test:> >a>=> 'Geeksforgeeks'> >b>=> 2009> # Dynamically initialize Newer class> # It will derive from the base class test> newer>=> type>(>'Newer'>, (test, ),> >dict>(a>=>'Geeks'>, b>=>2018>))> print>(>type>(newer))> print>(>vars>(newer))> |
>
>
Wyjście
{„var1”: „techcodeview.com”, „b”: 2009, „__module__”: „__main__”, „__dict__”: , „__weakref__”: , „__doc__”: Brak}
{‘a’: ‘Geeks’, ‘b’: 2018, ‘__module__’: ‘__main__’, ‘__doc__’: Brak}
Zastosowania funkcji type() w Pythonie
- typ( ) jest zasadniczo używana do celów debugowania. Używanie innych funkcji łańcuchowych, takich jak .upper(), .lower() i .split() z tekstem wyodrębnionym z robota sieciowego, może nie działać, ponieważ mogą one być innego typu, który nie obsługuje funkcji łańcuchowych. W rezultacie będzie nadal wyrzucał błędy, które są bardzo trudne do debugowania [Rozważ błąd, ponieważ GeneratorType nie ma atrybutu less() ].
- typ() Funkcja może być w tym momencie użyta do określenia typu wyodrębnionego tekstu, a następnie zamiany go na inną formę ciągu znaków, zanim użyjemy funkcji łańcuchowych lub jakichkolwiek innych operacji na nim.
- typ() z trzema argumentami może być używany do dynamicznego inicjowania klas lub istniejących klas z atrybutami. Służy również do rejestrowania tabel bazy danych za pomocą SQL .
- W ramach testów jednostkowych
type()>może służyć do sprawdzania wyników funkcji lub metod, zapewniając zwrócenie oczekiwanych typów danych.