Funkciju type() galvenokārt izmanto atkļūdošanas nolūkos. Funkcijai type() var nodot divus dažādus argumentu veidus, vienu un trīs argumentus. Ja tiek nodots viens argumenta tips (obj), tas atgriež dotā objekta veidu. Ja tiek nodoti trīs argumentu veidi (objekts, bāzes, diktāts), tas atgriež jauna tipa objektu.
Python type() funkcija Sintakse
Sintakse: veids (objekts, bāzes, dikts)
Parametri:
- objekts: Obligāti. Ja ir norādīts tikai viens parametrs, funkcija type() atgriež šī objekta veidu
- bāzes: klašu virkne, no kurām izriet pašreizējā klase. Vēlāk atbilst atribūtam __bāzes__.
- dikti: vārdnīca, kurā ir klases nosaukumvietas. Vēlāk atbilst atribūtam __dict__.
Atgriezties: atgriež jaunu tipa klasi vai būtībā metaklasi.
Kā darbojas tipa() funkcija Pythonā?
Dotajā piemērā mēs drukājam mainīgā x veidu. Mēs noteiksim objekta veidu Python.
Python3
vārdnīcas inicializators c#
x>=> 10> print>(>type>(x))> |
>
>Izvade
>
Funkcijas type() piemēri Python
Izmantojot funkciju type (), mēs varam noteikt objekta veidu Python. Tālāk ir sniegti vēl daži ar funkciju type() saistīti piemēri:
Python objekta veida atrašana
Šeit mēs pārbaudām objekta tipu, izmantojot funkciju type () in Python .
Python3
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))> |
>
>Izvade
python programmu saraksts
>
Pārbaudiet, vai objekts ir tipa Python
Šajā piemērā mēs pārbaudām objektu, izmantojot nosacījumus, un izdrukājam Būla vērtību.
Python3
print>(>type>([])>is> list>)> print>(>type>([])>is> not> list>)> print>(>type>(())>is> tuple>)> print>(>type>({})>is> dict>)> print>(>type>({})>is> not> list>)> |
>
Normalizācija datu bāzē
>Izvade
True False True True True>
Tipa () izmantošana ar nosacījumu paziņojumu
Šajā piemērā mēs izmantojam type() funkciju, lai noteiktu objekta veidu Python ar nosacījumu 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.'>)> |
>
>Izvade
The variables have different object types.>
Python type() Ar 3 parametriem
Dotajā piemērā mēs veidojam a klasē bez bāzes klases un klases, kas atvasināta no bāzes klases. Funkcija type() ļauj programmatiski definēt klases un to atribūtus izpildlaikā.
Python3
# 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))> |
>
semantiskā kļūda
>
Izvade
{'var1': 'techcodeview.com', 'b': 2009, '__module__': '__main__', '__dict__': , '__weakref__': , '__doc__': Nav}
{'a': 'Geeks', 'b': 2018, '__module__': '__main__', '__doc__': nav}
Python tipa() funkcijas lietojumprogrammas
- tips( ) funkcija galvenokārt tiek izmantota atkļūdošanas nolūkos. Izmantojot citas virknes funkcijas, piemēram, .upper(), .lower() un .split() ar tekstu, kas iegūts no tīmekļa rāpuļprogrammas, tas var nedarboties, jo tās var būt dažāda veida, kas neatbalsta virknes funkcijas. Rezultātā tas turpinās izmest kļūdas, kuras ir ļoti grūti atkļūdot [Apsveriet kļūdu, jo GeneratorType nav atribūta zemāka()].
- tips () Funkciju šajā brīdī var izmantot, lai noteiktu izvilktā teksta veidu un pēc tam mainītu to uz citiem virknes veidiem, pirms mēs izmantojam virknes funkcijas vai citas darbības ar to.
- tips () ar trim argumentiem var izmantot, lai dinamiski inicializētu klases vai esošās klases ar atribūtiem. To izmanto arī, lai reģistrētu datu bāzes tabulas ar SQL .
- Vienību testēšanas sistēmās
type()>var izmantot, lai apstiprinātu funkciju vai metožu izvadi, nodrošinot, ka tiek atgriezti gaidītie datu tipi.